LINUX.ORG.RU

Вложенные пути и роутеры DRF

 ,


0

1

Собственно, сабж. Использую DefaultRouter. Есть шаблоны router.register ('foo', views.FooView) router.register('bar', views.BarView). Всё работает. А теперь внимание, вопрос: как сделать так, чтобы router.register('foo/bar', views.BarView) тоже работало?

Ну или объясните, почему так делать нельзя.

Всем спасибо.

Маршрутизаторы это всё-таки про направление запроса согласно какому-то предопределённому набору правил.
Исходя из https://www.django-rest-framework.org/api-guide/routers/#defaultrouter, для DefaultRouter «foo/bar» подпадает под:


  • {prefix}/{url_path}/[.format]
  • {prefix}/{lookup}/[.format]


Соответственно оно и будет уходить на views.FooView. Вам нужна своя реализация от BaseRouter, если действительно нужны маршрутизаторы. Или просто указывать пути через urlpatterns.

sanwashere ★★
()
Последнее исправление: sanwashere (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.