首页 > 解决方案 > 如何反序列化没有名称的对象数组?

问题描述

所以我有一组对象被发布到我的视图中,形状如下:

[{"id": 5, "is_read": true},
 {"id": 6, "is_read": false}]

我想在我的 DRF 序列化程序中找到一种反序列化的方法。当您的数组具有名称时,可能会有嵌套的序列化程序,也就是说,就像这样:"arrayName": []而不是像这样:[]

使用嵌套的序列化程序,我可以编写如下内容:

class MarkReadItemDeserializer(serializers.Serializer):
    id = serializers.PrimaryKeyRelatedField(queryset=Message.objects.all())
    is_read = serializers.BooleanField()


class MarkReadDeserializer(serializers.Serializer):
    arrayName = MarkReadItemDeserializer(many=True)

现在这显然不适用于我的情况,因为我的数组未命名arrayName

知道我该怎么做吗?

标签: pythondjangodjango-rest-frameworkdjango-serializer

解决方案


推荐阅读