Невозможно поднять ValidationError в сериализаторе обновлений django

Я пытаюсь поднять ValidationError в сериализаторе обновлений, но не смог. Вот мой код:

from rest_framework.exceptions import ValidationError

class PersonUpdateSerializer(serializers.ModelSerializer):

    class Meta:
        model = Person
        fields = (
            "name",
            "surname",
        )

    def validate(self, attrs):
        # type: (dict) -> dict
        errors = {}

        attrs = super(PersonUpdateSerializer, self).validate(
            attrs
        )

        if "surname" not in attrs:
            errors["surname"] = "This field is required."

        if errors:
            raise ValidationError(errors)
            
        return attrs

    def update(self, instance, validated_data):
        
        for key in validated_data:
            setattr(instance, key, validated_data.get(key))

        instance.clean()
        instance.save()

        return instance

Когда я не отправляю параметр "surname", он должен поднимать ValidationError, но этого не происходит. Что я упускаю?

Вернуться на верх