Выбор ответа Junior Django REST Framework обновлено

ViewSet и роутер

Вопрос

Что даёт связка ModelViewSet и DefaultRouter?

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

Выберите вариант, и откроется разбор.

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

Коротко

Правильный ответ: Роутер генерирует URL для list, create, retrieve, update, destroy. router.register("orders", OrderViewSet, basename="order") создаст /orders/ и /orders/{pk}/ с нужными методами, плюс URL для @action.

Варианты ответа

  1. Вьюсет автоматически создаёт модель и миграции по полям сериализатора
  2. Роутер генерирует URL для list, create, retrieve, update, destroyправильный ответ
  3. Роутер распределяет запросы между серверами по префиксу маршрута
  4. Вьюсет отключает проверку прав, если роутер зарегистрирован глобально

Разбор

router.register("orders", OrderViewSet, basename="order") создаст /orders/ и /orders/{pk}/ с нужными методами, плюс URL для @action. Модели и миграции вьюсет не создаёт, балансировкой занимается инфраструктура, а права проверяются как обычно.

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

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