Django Rest Framework如何自定义ListAPIView

Cheng

我有两个模型,SurveyQuestion一个Survey可以包含多个Question我想创建一个ListAPIView返回的列表SurveysQuestions他们有关。所以返回的json看起来像这样:

[{
     'name': 'Survey 1',
     'questions':[{'question': 'q1'}, {'question': 'q2'}]
 },
 {
     'name': 'Survey 2',
     'questions':[{'question': 'q3'}, {'question': 'q4'}]
 },
 ...
]

我想使用CursorPaginationDRF包随附的。所以这是我尝试过的:

class SurveyList(ListAPIView):
    pagination_class = CursorPagination

    def get_queryset(self):
        # How can I construct a queryset that matches the JSON structure above?

由于ListAPIViewget_queryset期望返回查询集。我需要手动创建上述的JSON结构并将其放入查询集中。

所以我的问题是如何手动创建查询集?


更新:这是模型定义

class Survey(models.Model):
    name = models.TextField()

class Question(models.Model):
    question = models.TextField()
    survey = models.ForeignKey(Survey)
丹尼尔·雷日科夫(Daniil Ryzhkov)

您需要为模型创建自定义序列化器:

class QuestionSerializer(serializers.ModelSerializer):

    class Meta:
        model = Question
        fields = ('question',)

class SurveySerializer(serializers.ModelSerializer):
    questions = QuestionSerializer(source="question_set", many=True)

    class Meta:
        model = Survey
        fields = ('name', 'questions')
        depth = 1

您认为:

class SurveyList(ListAPIView):
     queryset = Survey.objects.all()
     serializer_class = SurveySerializer

在情况下,如果你有ForeignKeyQuestion你的Survey模型。如果您不question_set使用字段名替换

Django Rest Framework文档中的Checkout序列化器部分

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Django Rest Framework自定义端点

来自分类Dev

自定义字段Django Rest Framework

来自分类Dev

Django Rest Framework的自定义例外

来自分类Dev

Django Rest Framework自定义响应消息

来自分类Dev

Django Rest Framework中的Viewset'create'自定义赋值

来自分类Dev

Django Rest Framework自定义验证错误

来自分类Dev

Django REST Framework-不评估自定义权限

来自分类Dev

Django Rest Framework-按自定义字段过滤

来自分类Dev

Django Rest Framework自定义令牌认证

来自分类Dev

自定义 NotFound 异常 --- Django REST Framework

来自分类Dev

使用 Django Rest Framework 的自定义 JSON 回调

来自分类Dev

Django Rest Framework 自定义错误消息

来自分类Dev

如何在Django REST Framework中返回自定义JSON

来自分类Dev

Django Rest Framework-如何为所有ModelSerializer字段创建自定义错误消息?

来自分类Dev

如何自定义Django Rest Framework序列化器输出?

来自分类Dev

如何在Django Rest Framework中创建自定义JSON有效负载结构?

来自分类Dev

如何在Django Rest Framework中使用自定义令牌模型

来自分类Dev

如何在Django-Rest-Framework ViewSet中获取自定义列表视图

来自分类Dev

如何将Django Rest Framework的默认URL更改为自定义

来自分类Dev

如何在django-rest-framework中将pagination_class用于自定义分页类

来自分类Dev

Django Rest Framework:如何在GET请求的响应中添加自定义字段?

来自分类Dev

如何使用Django Rest Framework将serializer.data移入自定义实例(字段)

来自分类Dev

如何在Django REST Framework中返回自定义JSON输出

来自分类Dev

如何在Django REST Framework的RelatedField类中自定义to_internal_value函数?

来自分类Dev

如何在Django Rest Framework中设置自定义分页?

来自分类Dev

一个如何自定义Django Rest Framework序列化程序输出?

来自分类Dev

Django Rest Framework:如何在GET请求的响应中添加自定义字段?

来自分类Dev

Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

来自分类Dev

Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

Related 相关文章

  1. 1

    Django Rest Framework自定义端点

  2. 2

    自定义字段Django Rest Framework

  3. 3

    Django Rest Framework的自定义例外

  4. 4

    Django Rest Framework自定义响应消息

  5. 5

    Django Rest Framework中的Viewset'create'自定义赋值

  6. 6

    Django Rest Framework自定义验证错误

  7. 7

    Django REST Framework-不评估自定义权限

  8. 8

    Django Rest Framework-按自定义字段过滤

  9. 9

    Django Rest Framework自定义令牌认证

  10. 10

    自定义 NotFound 异常 --- Django REST Framework

  11. 11

    使用 Django Rest Framework 的自定义 JSON 回调

  12. 12

    Django Rest Framework 自定义错误消息

  13. 13

    如何在Django REST Framework中返回自定义JSON

  14. 14

    Django Rest Framework-如何为所有ModelSerializer字段创建自定义错误消息?

  15. 15

    如何自定义Django Rest Framework序列化器输出?

  16. 16

    如何在Django Rest Framework中创建自定义JSON有效负载结构?

  17. 17

    如何在Django Rest Framework中使用自定义令牌模型

  18. 18

    如何在Django-Rest-Framework ViewSet中获取自定义列表视图

  19. 19

    如何将Django Rest Framework的默认URL更改为自定义

  20. 20

    如何在django-rest-framework中将pagination_class用于自定义分页类

  21. 21

    Django Rest Framework:如何在GET请求的响应中添加自定义字段?

  22. 22

    如何使用Django Rest Framework将serializer.data移入自定义实例(字段)

  23. 23

    如何在Django REST Framework中返回自定义JSON输出

  24. 24

    如何在Django REST Framework的RelatedField类中自定义to_internal_value函数?

  25. 25

    如何在Django Rest Framework中设置自定义分页?

  26. 26

    一个如何自定义Django Rest Framework序列化程序输出?

  27. 27

    Django Rest Framework:如何在GET请求的响应中添加自定义字段?

  28. 28

    Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

  29. 29

    Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

热门标签

归档