python - Django REST 在查看列表时指定哪些字段

标签 python django rest

默认情况下,当询问像“/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/

相关文章:

java - 在 ServiceNow 中使用 REST API 获取用户 sys_id?

delphi - Delphi XE2 pro 中的 REST 服务器

python - 在给定坐标的不规则网格上查找最近的地面像素

python - 如何根据另一列的条件对 Pandas 中的一列进行子集化

python - Seaborn Regplot 和 Scikit-Learn 逻辑模型的计算方式不同?

python - Django:在运行服务器之后立即运行脚本

javascript - 如何在 javascript/jquery 事件后更改 Django 中的服务器端数据?

python - 如何将变量注入(inject)到 Django 模板的上下文中,类似于内置 'as' 标签的 'url' 参数?

python - 两个二维数组从哪里开始相互重叠?

web-services - Angular2 如何使用服务类发布数据