Django框架出现404页面未找到错误,如何解决?
Django根路径404错误解决方法
从给出的错误信息可以明确:你的项目URL配置文件(sitaram.urls)中仅定义了members/和admin/两个路径规则,根路径/没有对应的匹配项,导致访问时返回404错误。
以下是两种常见的解决方式:
方式一:为根路径绑定视图
打开项目根目录下的sitaram/urls.py文件,添加根路径的URL规则,可根据需求选择:
1. 使用模板视图展示静态首页
from django.urls import path from django.views.generic import TemplateView from django.contrib import admin from django.urls import include urlpatterns = [ # 根路径绑定到首页模板,需提前在templates目录下创建home.html path('', TemplateView.as_view(template_name='home.html'), name='home'), path('members/', include('members.urls'), name='members'), path('admin/', admin.site.urls), ]
2. 使用自定义视图函数
如果你已经有编写好的首页视图函数(比如members/views.py中的home函数),可以直接绑定:
from django.urls import path from django.contrib import admin from django.urls import include from members.views import home # 导入自定义视图 urlpatterns = [ path('', home, name='home'), path('members/', include('members.urls'), name='members'), path('admin/', admin.site.urls), ]
方式二:将根路径重定向到现有路径
如果不需要单独的首页,可以把根路径直接重定向到已有的members/或admin/路径:
from django.urls import path from django.views.generic.base import RedirectView from django.contrib import admin from django.urls import include urlpatterns = [ # 永久重定向到members路径,也可替换为'/admin/' path('', RedirectView.as_view(url='/members/', permanent=True)), path('members/', include('members.urls'), name='members'), path('admin/', admin.site.urls), ]
注意事项
- 若使用模板视图,需确保项目
settings.py中已正确配置模板路径:TEMPLATES里的APP_DIRS设为True,或在DIRS中指定模板所在目录。 - 修改URL配置后,重启Django开发服务器,再访问
http://127.0.0.1:8000/即可生效。
内容的提问来源于stack exchange,提问作者Vivekvardhan G
相关产品推荐
相关产品推荐

