Как добавить пользовательский сайт администратора django и урлы без префикса в каждом шаблоне?
Я пытаюсь включить урлы моего пользовательского административного сайта одного из моих приложений в проект Django. Я бы хотел, чтобы путь был foo-admin/...
. Мне удалось это сделать, включив этот префикс во все urlpatterns в приложении urls.py
. Однако если я попытаюсь добавить префикс в urls.py
проекта и иметь только суффиксы в урлах приложения, это приведет к поломке. Это выглядит примерно так:
Это работает:
Проект urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('my_app.urls')),
]
my_app/urls.py
:
urlpatterns = [
path('foo-admin/', my_app_admin_site.urls),
path('foo-admin/foo/', views.some_view),
path('foo-admin/foo/<slug>/', views.MyGenericView.as_view()),
]
Это не работает:
Проект urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('foo-admin/', include('my_app.urls')),
]
my_app/urls.py
urlpatterns = [
path('', my_app_admin_site.urls),
path('foo/', views.some_view),
path('foo/bar/<slug>/', views.MyGenericView.as_view()),
]
Ошибка, с которой я сталкиваюсь:
NoReverseMatch at /foo-admin/
Reverse for 'app_list' with keyword arguments '{'app_label': 'my_app'}' not found. 1 pattern(s) tried: ['admin/(?P<app_label>auth|app1|app2|django_mfa|axes)/$']