Выбор ответа Junior Django REST Framework обновлено
ViewSet и роутер
Вопрос
Что даёт связка ModelViewSet и DefaultRouter?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Роутер генерирует URL для list, create, retrieve, update, destroy. router.register("orders", OrderViewSet, basename="order") создаст /orders/ и /orders/{pk}/ с нужными методами, плюс URL для @action.
Варианты ответа
- Вьюсет автоматически создаёт модель и миграции по полям сериализатора
- Роутер генерирует URL для list, create, retrieve, update, destroyправильный ответ
- Роутер распределяет запросы между серверами по префиксу маршрута
- Вьюсет отключает проверку прав, если роутер зарегистрирован глобально
Разбор
router.register("orders", OrderViewSet, basename="order") создаст /orders/ и /orders/{pk}/ с нужными методами, плюс URL для @action. Модели и миграции вьюсет не создаёт, балансировкой занимается инфраструктура, а права проверяются как обычно.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.