项目主要网址问题。我下面的代码示例
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',
]
主页网址
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')
但是,如果我像下面那样更改主项目的网址
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)
结果是:
答案 0 :(得分:1)
首页网址:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
主要网址:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
我希望对您有帮助
答案 1 :(得分:1)
代码正确。
在屏幕快照中,您正在访问http://localhost:8000
-最后没有/
。 Django告诉您路径为/
。因此,正确的URL是http://localhost:8000/
。
如果您希望Django自动重定向,请在settings.py
中使用APPEND_SLASH。
如果您不想重定向,也不想从头开始使用/
,请在主url文件中使用path('', include('homepage.urls')),
。
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)