Django DRF列表的id对象

时间:2018-02-23 11:22:04

标签: python django django-rest-framework

我有这样的序列化器

   class MyModelSerializer(serializers.ModelSerializer):

        class Meta:
            model = MyModel
            fields = ('id',)

    class MyModelIdListSerializer(serializers.Serializer):
         ids = MyModelSerializer(many=True)

请求身体

{
    "ids": [
        {
            "id": "f07e3673-6631-4139-90da-331773ba868e"
        },
        {
            "id": "f07e3673-6631-4139-90da-331773ba868e"
        }
    ]
}

但需要这个

{
    "ids": [
         "f07e3673-6631-4139-90da-331773ba868e",
         "f07e3673-6631-4139-90da-331773ba868e"
    ]
}

我可以使用UUID作为子进行ListField,但是如果表中存在这样的id,则需要编写自定义验证

1 个答案:

答案 0 :(得分:3)

如果您想要ids使用PrimaryKeyRelatedField

列表
ids = serializers.PrimaryKeyRelatedField(many=True, read_only=True)