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

perform_create

Вопрос

Зачем переопределяют perform_create в generic-вьюхе DRF?

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

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

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

Коротко

Чтобы при сохранении добавить данные не из запроса: serializer.save(owner=self.request.user). Так владелец берётся из аутентификации, а не из тела запроса, которое клиент может подделать.

Ответ

Чтобы при сохранении добавить данные не из запроса: serializer.save(owner=self.request.user). Так владелец берётся из аутентификации, а не из тела запроса, которое клиент может подделать.

Разбор

Аналогично perform_update и perform_destroy для дополнительной логики при изменении и удалении.

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

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