默认情况下,当询问像“/cars”这样的模型列表时,django rest 会输出所有模型数据。我希望它只在列表请求中输出 pk,在详细请求中输出完整的模型数据。我正在使用 ModelSerializer 和 ModelViewSet。
附言。它应该是这样设计的吗?提取这么多不需要的数据似乎是一种浪费。 谢谢:)
最佳答案
您可以简单地覆盖 View 集的“列表”方法以获得所需的响应,如下所示:
from rest_framework.response import Response
def list(self, request, *args, **kwargs):
pks = []
qs = self.get_queryset()
for obj in qs:
pks.append(obj.pk)
return Response(data=pks)
关于python - Django REST 在查看列表时指定哪些字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31623284/