Django2.1.7 项目 urls.py 无法正常工作(给出 404 错误)
Django2.1.7 project urls.py not working properly (giving 404 error)
项目主要网址问题。下面是我的代码示例
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')
结果:
但是如果我像下面这样更改主项目 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)
结果是:
How can i see http://localhost:8000/blog in http://localhost:8000/
主页网址:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
主要网址:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
希望对你有所帮助
密码正确。
在您访问的屏幕截图中 http://localhost:8000
- 最后没有 /
。 Django 告诉你路径是/
。所以,正确的 URL 是 http://localhost:8000/
.
如果你想让Django自动重定向,在settings.py
中使用APPEND_SLASH。
如果您不想要重定向并且不想要末尾的 /
,请在主 urls 文件中使用 path('', include('homepage.urls')),
。
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
项目主要网址问题。下面是我的代码示例
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')
结果:
但是如果我像下面这样更改主项目 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)
结果是:
How can i see http://localhost:8000/blog in http://localhost:8000/
主页网址:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
主要网址:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]
希望对你有所帮助
密码正确。
在您访问的屏幕截图中 http://localhost:8000
- 最后没有 /
。 Django 告诉你路径是/
。所以,正确的 URL 是 http://localhost:8000/
.
如果你想让Django自动重定向,在settings.py
中使用APPEND_SLASH。
如果您不想要重定向并且不想要末尾的 /
,请在主 urls 文件中使用 path('', include('homepage.urls')),
。
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('homepage.urls')),
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)