Как сделать класс сериализатора для поля manytomany пустым при POST - PullRequest
1 голос
/ 10 июля 2020

ItemSerializers для модели Item, которая является полем manytomany в модели supplier, я пытаюсь сделать это необязательным, но он не работает, это мой код:

class SupplierSerializer(serializers.HyperlinkedModelSerializer):
    id = serializers.IntegerField(read_only=True)
    person_name = serializers.CharField(max_length=120, allow_blank=True)
    company_name = serializers.CharField(max_length=120, allow_blank=True)
    tax_number = serializers.CharField(max_length=120, allow_blank=True)
    items = ItemSerializer(many=True, allow_null=True, required=False)
    class Meta:
        model = Supplier
        fields = '__all__'

проблема в строке

    items = ItemSerializer(many=True, allow_null=True, required=False)

Поскольку я не могу отправить запрос с пустым полем элементов !!

1 Ответ

1 голос
/ 10 июля 2020

Установить read_only=True

items = ItemSerializer(<b>many=True, read_only=True</b>)
...