加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

django rest framework自定义返回格式

发布时间:2020-12-20 10:24:12 所属栏目:Python 来源:网络整理
导读:一、默认response # view from rest_framework.generics import ListAPIView from .serializer import IdcSerializer from .models import Idc class IdcList(ListAPIView): queryset = Idc.objects.all() serializer_class = IdcAllSerializer http://127.0

一、默认response

# view
from rest_framework.generics import ListAPIView
from .serializer import IdcSerializer
from .models import Idc

class IdcList(ListAPIView):
    queryset = Idc.objects.all()
    serializer_class = IdcAllSerializer

http://127.0.0.1:8000/api/asset/idcall/?format=json

?

?

?

二、自定义response

实际开发中我们需要返回更多的字段比如

{
  "code": 0,"data": [],# 存放数据
  "msg": "","total": ""
}

这时候就需要重写list方法

# view
from rest_framework.generics import ListAPIView
from rest_framework.response import Response

class IdcList(ListAPIView):
    def list(self,request):
        queryset = Idc.objects.all()
        response = {
            code: 0,data: [],msg: success,total: ‘‘
        }
        serializer = IdcSerializer(queryset,many=True)
        response[data] = serializer.data
        response[total] = len(serializer.data)
        return Response(response)

?

?

PS:

Python 3.7.4

djangorestframework??3.10.1

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读