如何修复Django登录页面404(页面未找到)错误?
解决Django登录页面404错误问题
问题根源
从你提供的请求URL http://127.0.0.1:8000/{%url 'login'%} 可以明确看出:Django的模板标签{% url 'login' %}没有被解析,直接被当作URL路径的一部分请求了,这才触发了404错误。模板标签需要在Django模板渲染过程中转换成实际的URL路径(也就是你配置里的/login/),不能直接作为URL访问。
修复步骤
直接访问正确路径
手动访问登录页时,使用实际生效的URL:http://127.0.0.1:8000/login/修正模板中的跳转链接
如果是通过页面内的链接跳转登录页,必须在模板中正确使用Django模板标签生成URL,示例代码:<a href="{% url 'login' %}">前往登录</a>模板渲染时,
{% url 'login' %}会自动替换为/login/,浏览器就能请求到正确的页面。确认根URL配置
检查项目根目录下的mysite/urls.py,确保已经包含了你的app的URL配置,示例代码:from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('你的app名称.urls')), # 替换为实际的app名称 ]只有这样,app里定义的
login/路径才能被Django的路由系统识别。
额外检查点
- 确认你的app已经添加到
settings.py的INSTALLED_APPS列表中 - 清除浏览器缓存,避免旧的错误URL被缓存影响
内容的提问来源于stack exchange,提问作者tommyte0
相关产品推荐
相关产品推荐

