一、默认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://12
一、默认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