Django新手遇404报错,空路径无法匹配现有URL配置如何解决?
Django 空路径匹配404报错解决方法
报错原因
你当前访问的是网站根路径(即/路径),但URL配置中仅定义了index/和admin/两个路径匹配规则,没有对应根路径的匹配规则,因此Django匹配失败返回404错误。
解决方案
你可以根据自身需求选择以下任意一种方案:
- 方案1:直接访问匹配路径
无需修改配置,直接访问已配置好的路径即可避免报错:- 访问index页面:输入地址
http://你的域名/index/ - 访问管理后台:输入地址
http://你的域名/admin/
- 访问index页面:输入地址
- 方案2:新增根路径匹配规则
如果你希望访问网站根路径直接展示index页面,在urls.py的urlpatterns列表中新增根路径规则即可,修改后完整代码如下:
from django.contrib import admin from django.urls import include,path from firstApp import views urlpatterns = [ path('', views.index, name='root-view'), # 新增根路径匹配规则 path('index/',views.index, name = 'main-view'), path('admin/', admin.site.urls), ]
- 方案3:根路径自动重定向到index页面
如果你希望访问根路径时自动跳转到/index/地址,可以使用重定向规则,修改后完整代码如下:
from django.contrib import admin from django.urls import include,path from django.shortcuts import redirect from firstApp import views urlpatterns = [ path('', lambda request: redirect('main-view'), name='root-redirect'), # 新增重定向规则 path('index/',views.index, name = 'main-view'), path('admin/', admin.site.urls), ]
内容的提问来源于stack exchange,提问作者Sarthak Mehta
相关产品推荐
相关产品推荐

