Вторичный административный сайт Django ссылается на основной административный сайт
Я пытаюсь добавить вторичный административный сайт, и он работает правильно, за исключением того, что все ссылки указывают на главный административный сайт. Не уверен, как обойти это.
Если я посещаю /dispatch/admin/
модель Run
видна, но когда я нажимаю на ссылку, она направляет меня на /admin/dispatch/run/
вместо /dispatch/admin/dispatch/run/
.
Django==3.2.7
class DispatchAdminSite(admin.AdminSite):
pass
class DispatchRunAdmin(RunAdmin):
def get_queryset(self, request):
return (
super().get_queryset(request)
.filter_today_or_future()
)
def get_readonly_fields(self, request, obj=None):
return [f.name for f in self.model._meta.fields]
dispatch_admin_site = DispatchAdminSite(name='Dispatch')
dispatch_admin_site.register(models.Run, DispatchRunAdmin)
dispatch/urls.py
app_name = 'dispatch'
urlpatterns = [
path('admin/', admin.dispatch_admin_site.urls),
]
project/urls.py
urlpatterns = [
path('dispatch/', include('dispatch.urls')),
path('admin/', admin.site.urls),
]
По какой-то причине пользовательский админ не может быть добавлен с помощью include
он должен быть URL верхнего уровня в вашем проекте.
# project/urls.py
from django.contrib import admin
from dispatch.admin import dispatch_admin_site
urlpatterns = [
path('dispatch-admin/', dispatch_admin_site.urls),
path('admin/', admin.site.urls),
]