#python #python-3.x #django #django-admin
#python #python-3.x #django #django-admin
Вопрос:
Я разрабатываю приложение Django (3.1), которое использует только сайт администратора.
Затем поведение по умолчанию заключается в том, чтобы обслуживать сайт администратора с помощью пути:
http://localhost:8080/admin/
Который предполагает, что у вас есть другие сайты в http://localhost:8080/other_site
Поскольку мой единственный сайт — это сайт администратора, я бы хотел обслуживать сайт администратора по адресу:
http://localhost:8080/
без admin/
.
Вот файл website/urls.py
(папка веб-сайта содержит все настройки / конфигурацию)
from django.contrib import admin
from django.urls import include, path
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('management/', include('management.urls')),
path('admin/', admin.site.urls),
] static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
И вот файл management/urls.py
(управление — это приложение со всеми моделями)
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
Как я могу это сделать?
Я попытался обновить website/urls.py
, чтобы включить это
#path('management/', include('management.urls')),
path('/', admin.site.urls),
я думал, что это отключит management
конечную точку (это так), но она не указывает домашний путь к сайту администратора.
Ответ №1:
Если вы хотите изменить URL-адрес, просто удалите admin/
from django.contrib import admin
from django.urls import include, path
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
path('management/', include('management.urls')),
path('', admin.site.urls), # here is a change
] static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Комментарии:
1. ах, очень приятно, спасибо. Я пробовал это с помощью «/», но это не сработало.
2. Да, django очень пунктуален в этом, но когда вы смотрите даже внутрь
management/urls.py
, вы можете видеть, что вы также используетеpath('', views.index)
вместо того, чтобы помещать/
внутри кавычек