需求:

  由于前端框架需要后端返回数据格式为{"rows: "[{"id":1,"project_name":"短信"},{"id":2,"project_name":"短信"}], "total": 2},

默认情况下ListAPIView视图获取列表所有数据返回数据格式为:[{"id":1,"project_name":"短信"},{"id":2,"project_name":"短信"}]

class ServerInfoList(generics.ListAPIView):
    """
    获取所有服务器信息
    """
    queryset = ServerInfo.objects.all()
    serializer_class = ServerInfoSerializers

但是前端框架需要返回格式为:{"rows: "[{"id":1,"project_name":"短信"},{"id":2,"project_name":"短信"}], "total": 2},

分析:

  上面的ServerInfo类继承自子类视图ListAPIView,返回了list方法,

Django:重写list方法,修改drf默认查询的返回格式

 

 其中list方法来自于继承的mixins.ListModelMixin,所以需要修改返回结果就只需要重写这个list方法就可以了

Django:重写list方法,修改drf默认查询的返回格式

 

 最终修改如下:

Django:重写list方法,修改drf默认查询的返回格式

 

 测试一下看返回格式:

Django:重写list方法,修改drf默认查询的返回格式

 

相关文章:

  • 2021-12-26
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-24
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-06-26
  • 2022-02-02
  • 2022-12-23
  • 2022-02-11
  • 2021-11-21
  • 2021-05-21
相关资源
相似解决方案