筛选器嵌套序列化程序Django rest fram

2024-05-23 14:01:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个模型序列化程序:

class QuoteTemplateSerializer(serializers.ModelSerializer):
    user = serializers.PrimaryKeyRelatedField(read_only=True)
    quote = QuoteSerializer()
    language_list = serializers.SerializerMethodField()

    class Meta:
        model = QuoteTemplate
        fields = ('id', 'user', 'quote', 'language_list')

这个观点:

^{pr2}$

我想列出报价模型和报价模板模型。然而,当列出Quote模型时,我希望跳过那些没有客户机的记录,而当列出QuoteTemplate模型时,我不想过滤。在

以我目前的观点,我怎样才能做到这一点?现在我的名单都被过滤了。在

编辑:

我已经试过用了serializers.SerializerMethodField()但是,当我试图从validated_data弹出信息时,create()和update()函数出现错误。在


Tags: 模型程序序列化languagelistclassquote报价
1条回答
网友
1楼 · 发布于 2024-05-23 14:01:33

您应该检查视图集返回的内容。您确定q.Quote.objects.all_for(self.request.user).filter(client__isnull=False)和{}返回了正确的查询集吗?序列化程序中没有逻辑,它只是序列化queryset中的值。在

相关问题 更多 >