2017-07-18 54 views
0

我已经看到了一些关于此主题的类似问题,但其他海报代码的结构与我为构建REST API(http://www.django-rest-framework.org/tutorial/quickstart/)所遵循的教程不同。在教程之后,当查询API时,我得到了一个未命名的JSON响应。我有serializers.pyviews.py为处理JSON的两个文件:在Django REST API中命名JSON数组

serializers.py:

from rest_framework import serializers 
from main.models import Request 

class RequestSerializer(serializers.ModelSerializer): 

    class Meta: 
     model = Request 
     fields = ('user', 'request', 'time') 

views.py

class RequestViewSet(viewsets.ModelViewSet): 
    queryset = Request.objects.all().order_by('-time') 
    serializer_class = RequestSerializer 
    paginate_by = None 

其他解决方案已经沿着增加return Response({"data": serializer.data})的线,但我不确定我可以在代码中添加这些内容。

回答

1
class RequestSerializer(serializers.ModelSerializer): 
    results_field = "your selected name" 

,或者你可以重写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({'results': serializer.data}) 
+0

谢谢@Exprator。第二种方法适用于我。 – hackerman