Карточка Middle Django REST Framework обновлено

Слои валидации сериализатора

Вопрос

В каком порядке DRF валидирует данные сериализатора?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

1) Поля: преобразование типа, required, maxlength и валидаторы поля. 2) validate<field для каждого поля.

Ответ

  1. Поля: преобразование типа, required, max_length и валидаторы поля. 2) validate_<field> для каждого поля. 3) validate(attrs) для проверок между полями. 4) Валидаторы из Meta.validators (например, UniqueTogetherValidator).

Разбор

Ошибки собираются в serializer.errors по полям, а общие ошибки попадают в non_field_errors.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.