擅长:python、mysql、java
<p>如果只想在数据前面加上<code>"stages:"</code>,可以在viewset中创建一个自定义端点,并指定要返回的格式。你知道吗</p>
<p>我不知道为什么你有一个模型序列化以及非模型序列化。这给你买了什么?你知道吗</p>
<p>下面是一些示例代码,可以将“get\u stages”添加到api url中。你知道吗</p>
<p><code>views.py:</code></p>
<pre><code>class StagePositionViewSet(viewsets.ModelViewSet):
queryset = Stage.objects.all()
serializer_class = StagePositionSerializer
@list_route(methods=['GET'])
def get_stages(self, request, **kwargs):
try:
stage_list = Stage.objects.all()
serializer = StagePositionSerializer(stage_list , many=True)
results = dict()
#this is where you add your prepended info
results['stages'] = serializer.data
return Response(results, status=status.HTTP_200_OK)
except Exception as e:
return Response(e, status=status.HTTP_400_BAD_REQUEST)
</code></pre>
<p>然后,如果您在URL<code>whatever_your_url/is/get_stages</code>执行GET,您将获得所需的有效负载格式。你知道吗</p>