错误翻译

AssertionError: ' HyperlinkedIdentityField '需要在序列化器上下文中请求。在实例化序列化器时添加' context={'request': request} '。

错误代码:

book_ser = BookSerializer(data=request.data)

修改后:

book_ser = BookSerializer(data=request.data, context={'request': request})

全部代码

# views.py
@api_view(['GET', 'POST'])
def books(request):
if request.method == 'GET':
return Response(data={"msg": "get ok"})
elif request.method == "POST":
book_ser = BookSerializer(data=request.data, context={'request': request}) if book_ser.is_valid():
book_ser.save() return Response(book_ser.data)
return Response(data={'msg': 'error'}, status=status.HTTP_400_BAD_REQUEST)

报了一个新的错误

django.core.exceptions.ImproperlyConfigured: Could not resolve URL for hyperlinked relationship using view name "book-detail". You may have failed to include the related model in your API, or incorrectly configured the `lookup_field` attribute on this field.

上述问题,我引入HyperlinkedModelSerializer方法,重启服务器已解决

# models.py
from rest_framework import serializers
from RESTSerializer.models import Book

class BookSerializer(serializers.HyperlinkedModelSerializer):
"""
对数据库进行序列化
"""
class Meta:
model = Book
fields = ('b_name', 'b_price')

Django: AssertionError: `HyperlinkedIdentityField` requires the request in the serializer context. Add `context={'request': request}` when instantiating the serializer.的更多相关文章

  1. Request is not available in this context

    部署到新服务器的IIS的时候发现这个错误: Request is not available in this context 解决方案: <system.web> <customEr ...

  2. 遭遇ASP.NET的Request is not available in this context

    如果ASP.NET程序以IIS集成模式运行,在Global.asax的Application_Start()中,只要访问Context.Request,比如下面的代码 var request = Co ...

  3. scrapy-yield scrapy.Request()不执行、失效、Filtered offsite request to错误 [转]

    scrapy错误:yield scrapy.Request()不执行.失效.Filtered offsite request to错误.首先我们在Request()方法里面添加这么一个东东: yiel ...

  4. 此时servlet中的request和我们在页面jsp中的request 是同一个request.

    在tomcat容器启动的时候,jsp页面的内置对象request,response,同样是依赖于tomcat容器中的servlet-api.jar包,这个jar包和我们在web项目中的jar包是一样的 ...

  5. golang micro client 报错500 {"id":"go.micro.client","code":408,"detail":"call timeout: context deadline exceeded","status":"Request Timeout"}

    go micro web端连接services时,第一次访问提示500(broken pipe),排查发现客户端请求services时返回 {"id":"go.micro ...

  6. Django day26 HyperlinkedIdentityField,序列化组件的数据校验以及功能的(全局,局部)钩子函数,序列化组件的反序列化和保存

    一:HyperlinkedIdentityField(用的很少):传三个参数:第一个路由名字,用来反向解析,第二个参数是要反向解析的参数值,第三个参数:有名分组的名字 -1 publish = ser ...

  7. Django框架:2、静态文件配置、form表单、request对象、pycharm链接数据库、django链接数据库、ORM框架

    Django框架 目录 Django框架 一.静态文件配置 1.静态文件 2.配置方法 二.form表单 1.action属性 2.method属性 三.request对象 1.基本用法 四.pych ...

  8. django error: DisallowedHost: Invalid HTTP_HOST header: ''. You may need to add u'' to ALLOWED_HOST

    测试环境: [root@nanx-lli ~]# lsb_release -aLSB Version: :core-4.1-amd64:core-4.1-noarchDistributor ID: C ...

  9. //可以不保存在session中, 并且前面我保存在request,这里session也可以获取 chain.doFilter(request, response); //只有登录名不为空时放行,防止直接登录 成功的页面

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOE ...

  10. No mapping found for HTTP request with URI [/jiaoyu/student/add] in DispatcherServlet with name 'SpringMVC'

    项目是使用spring MVC (1)在浏览器中访问,后台总报错: No mapping found for HTTP request with URI [/exam3/welcome] in Dis ...

随机推荐

  1. [C++提高编程] 3.5 stack容器

    文章目录 3.5 stack容器 3.5.1 stack 基本概念 3.5.2 stack 常用接口 3.5 stack容器 3.5.1 stack 基本概念 概念:stack是一种先进后出(Firs ...

  2. .net 6 使用 NEST 查询,时间字段传值踩坑

    0x01业务描述 说明: 同事搭建的业务系统,最开始使用 log4net  记录到本地日志. 然后多个项目为了日志统一,全部记录在 Elasticsearch ,使用  log4net.Elastic ...

  3. Python获取jsonp数据

    使用python爬取数据时,有时候会遇到jsonp的数据格式,由于不是json的,所以不能直接使用json.loads()方法来解析,需要先将其转换为json格式,再进行解析.在前面讲了jsonp的原 ...

  4. 这个字段我明明传了呀,为什么收不到 - Spring 中首字母小写,第二个字母大写造成的参数问题

    问题现象 vSwitchId.uShape.iPhone... 这类字段名,有什么特点?很容易看出来吧,首字母小写,第二个字母大写.它们看起来确实是符合 Java 中对字段所推崇的"小驼峰命 ...

  5. Git&GitHub简介与入手(三)

    五.eclipse中的git使用 1.eclipse中本地库操作 (检测显示创建成功): (设置本地库范围签名): (一些git里的图标,保存着不同内容): https://github.com/gi ...

  6. 2023-05-09:石子游戏中,爱丽丝和鲍勃轮流进行自己的回合,爱丽丝先开始 。 有 n 块石子排成一排。 每个玩家的回合中,可以从行中 移除 最左边的石头或最右边的石头, 并获得与该行中剩余石头值

    2023-05-09:石子游戏中,爱丽丝和鲍勃轮流进行自己的回合,爱丽丝先开始 . 有 n 块石子排成一排. 每个玩家的回合中,可以从行中 移除 最左边的石头或最右边的石头, 并获得与该行中剩余石头值 ...

  7. var,let,const的区别

    JS中变量的定义方式有四种 不写var,let,const--直接定义变量 a = 10; 使用var关键字定义 var a = 10; 使用let关键字定义 let a = 10; 使用const关 ...

  8. vb.net 数据库连接字符串

    '设置数据库连接字符串 Dim connString As String = "Data Source=.\SQLEXPRESS;Initial Catalog=YourDatabaseNa ...

  9. 基于Sentinel自研组件的系统限流、降级、负载保护最佳实践探索

    作者:京东物流 杨建民 一.Sentinel简介 Sentinel 以流量为切入点,从流量控制.熔断降级.系统负载保护等多个维度保护服务的稳定性. Sentinel 具有以下特征: 丰富的应用场景:秒 ...

  10. 可视化生信分析利器 Galaxy 之 Docker 部署

    Galaxy Project(https://galaxyproject.org/)是很多年前在云计算背景下诞生的一个生物信息学可视化分析开源项目, 是目前生物医学研究领域最受欢迎的在线生物信息分析工 ...