4

实际上我已经定义了模型序列化器:

class MyObjectSerializer(serializers.ModelSerializer):
  class Meta:
    model = MyObject
    fields = ('id', 'name', )

为我准备 JSON 响应格式:

[
  { "id": 1, "name": "Object One"},
  { "id": 2, "name": "Object Two"}
]

我应该如何修改我的序列化程序类以获取格式的 JSON 响应:

{
  "results":
  [
    { "id": 1, "name": "Object One"},
    { "id": 2, "name": "Object Two"}
  ]
}

你有任何建议或链接到 django-rest-framework 文档我在哪里可以找到这个问题的描述?

4

1 回答 1

0

看看这里list()的方法。

假设你没有使用分页数据(你质疑暗示)它基本上只是这样做:

def list(self, request, *args, **kwargs):
    self.object_list = self.filter_queryset(self.get_queryset())
    serializer = self.get_serializer(self.object_list, many=True)
    return Response(serializer.data)

所以,你只需要覆盖它来使用你自己的自定义样式......

def list(self, request, *args, **kwargs):
    self.object_list = self.filter_queryset(self.get_queryset())
    serializer = self.get_serializer(self.object_list, many=True)
    return Response({'results': serializer.data})
于 2013-10-09T08:23:23.327 回答