Встречается на собеседованиях • сегодня

В каком случае вызывается update в сериализаторе (serializer)

Метод update() в сериализаторе DRF вызывается при частичном или полном обновлении существующего объекта через PUT или PATCH запросы. Он принимает два аргумента: экземпляр объекта и валидированные данные.

Пример:

python
class UserSerializer(serializers.ModelSerializer):
    class Meta:
        model = User
        fields = ['username', 'email']
text
def update(self, instance, validated_data):
    instance.username = validated_data.get('username', instance.username)
    instance.email = validated_data.get('email', instance.email)
    instance.save()
    return instance
text

Если `update()` не переопределён, DRF автоматически обновит объект по полям из `validated_data`. Вызов происходит внутри `.save()` при наличии `instance` в сериализаторе.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы