django modelserializer 合并

django modelserializer merge

使用django2.0.2 ptyhon3.4

MySerializer.py
class post(serializers.ModelSerializer)
    class Meta:
        model = post
        fields = ("postuid","useruid","content")

class reply(serializers.ModelSerializer)
    class Meta:
        model = reply
        fields = ("replyuid","postuid","useruid","content")

class postview(serializers.ModelSerializer)
    reply = reply()
    post  = post()
    fields = ('reply','post')???

我想要这个表格

{"postview":{"post":{postfield},"reply":[{replyfield}]}

怎么做

postview 不是 modelserializer?

您可以使用 serializers.Serializer class 代替:

class postview(serializers.Serializer):
    reply = reply(many=True)
    post  = post()

注意 Serializer 基础 class 你不需要 Meta 选项。只需根据需要添加尽可能多的字段作为序列化程序的属性。

您可以使用 many=True 属性指定 reply 包含对象列表。