Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django REST框架中的命名JSON数组_Django_Json_Django Rest Framework - Fatal编程技术网

Django REST框架中的命名JSON数组

Django REST框架中的命名JSON数组,django,json,django-rest-framework,Django,Json,Django Rest Framework,实际上,我已经定义了模型序列化程序: class MyObjectSerializer(serializers.ModelSerializer): class Meta: model = MyObject fields = ('id', 'name', ) 为我准备JSON响应的格式: [ { "id": 1, "name": "Object One"}, { "id": 2, "name": "Object Two"} ] { "results": [

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

class MyObjectSerializer(serializers.ModelSerializer):
  class Meta:
    model = MyObject
    fields = ('id', 'name', )
为我准备JSON响应的格式:

[
  { "id": 1, "name": "Object One"},
  { "id": 2, "name": "Object Two"}
]
{
  "results":
  [
    { "id": 1, "name": "Object One"},
    { "id": 2, "name": "Object Two"}
  ]
}
我应该如何修改序列化程序类以获得JSON响应格式:

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

您是否有任何关于django rest framework文档的建议或链接,我可以在哪里找到此问题的描述?

请查看
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})

我不知道是否有可能的内置解决方案,但为什么不创建自己的dict,例如
results={“results”:json\u from\u serializer}
?谢谢Tom。这就是我要找的。