#python #django #http-status-code-404
#python #django #http-status-code-404
Вопрос:
Проблема с основными URL-адресами проекта. мой пример кода ниже
from django.contrib import admin
from django.urls import path, include
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
path('admin/', admin.site.urls),
path('/', include('homepage.urls')),
] static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
настройка приложения
INSTALLED_APPS = [
'homepage',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
url-адреса домашней страницы
urlpatterns = [
path('', views.homepage, name='homepage'),
]
views.py
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def homepage(request):
return HttpResponse('Hello')
Но если я изменю основные URL-адреса проекта, как показано ниже
from django.contrib import admin
from django.urls import path, include
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('homepage.urls')),
] static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
результат:
Как я могу увидеть http://localhost:8000/blog в http://localhost:8000 /
Ответ №1:
Код правильный.
На скриншоте, который вы посещаете, http://localhost:8000
— нет /
в конце. Django сообщает вам, что путь является /
. Итак, правильный URL http://localhost:8000/
.
Если вы хотите, чтобы Django автоматически перенаправлял, используйте APPEND_SLASH в settings.py
.
Если вы не хотите перенаправлять и не хотите /
с конца, тогда используйте path('', include('homepage.urls')),
в основном файле urls.
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
] static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Комментарии:
1. Спасибо, сэр, вы потрясающий.
Ответ №2:
url-адреса домашней страницы:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
основные URL-адреса:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
Я надеюсь, что это поможет