首页>>后端>>Python->django如何自定义返回状态码(2023年最新整理)

django如何自定义返回状态码(2023年最新整理)

时间:2023-12-09 本站 点击:0

导读:很多朋友问到关于django如何自定义返回状态码的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

django表单返回字段值的自定义

我这没环境,我记得,form.xx可以取到当前form的值,你看点错了仍然保留在框里的实际原理是,把form.xx取到的form值再传回去,所以你取出来后,应该是个字典,把不需要的清空就好了,你试试,不行的话我回去写个代码给你

Django REST framework自定义响应格式

目前常用的响应格式如下:

所以对Djangorestframework响应格式进行改造。该响应的源码在venv/Lib/site-packages/rest_framework/response.py下,我们只需要重写一下response.py。新建一个utils文件夹,创建一个MyResponse类,增加code和msg的返回:

改造视图中的返回,使用我们的自定义格式:

用接口测试工具测试一下,看返回格式是否正确:

django如何在用户登录后返回到原来来页面,并保持登陆状态

任何页面的头部显示登录状态的部分应该是一个block,其他页面继承此block,这个block里面写上初始化js,从后台获取登录状态

django如何在queryset外面包一层json,添加result_code

queryset只是结果集,需要将它序列化成可以展示的数据,然后将数据放在HTTP响应中返回。此时可以指定响应的状态码。

写一个例子:

模型为MyModel,其中有字段name,需要返回所有name的列表。

from django.http import JsonResponse

queryset = MyModel.objects.all()

name_list = [instance.name for instance in queryset]

response = JsonResponse(data=name_list, status=201) # 构造一个json响应,响应体为name_list,状态码为201

return response # 返回此响应

结语:以上就是首席CTO笔记为大家介绍的关于django如何自定义返回状态码的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/20831.html