You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django应用登录成功后重定向异常(404错误)求助

排查Django登录后跳转404的方向

1. 确认目标跳转URL的路由配置存在

你设置的LOGIN_REDIRECT_URL = '/api/listsystemhazardcontrols/',但当前提供的URL配置里没有这个路径。需要:

  • 检查项目主urls.py是否包含了app的路由分发,比如:
    path('api/', include('app.urls'))
    
  • 检查app的urls.py里是否有对应路径的配置,示例:
    path('listsystemhazardcontrols/', views.target_view, name='listsystemhazardcontrols')
    
  • 可执行python manage.py show_urls(需安装django-extensions)快速列出所有已配置URL,确认目标路径是否存在。

2. 改用URL名称配置跳转,避免硬编码路径

硬编码路径易出错,建议用URL的name属性配置跳转:

# settings.py
LOGIN_REDIRECT_URL = 'listsystemhazardcontrols'  # 对应目标path的name值
# 若使用了命名空间,写成'app:listsystemhazardcontrols'

3. 排查next参数的干扰

Django的LoginView会优先使用请求中的next参数作为跳转目标:

  • 直接访问/login/(不带任何GET参数)测试,看是否跳转到LOGIN_REDIRECT_URL配置的路径
  • 检查登录表单是否正确处理next字段,确保未传入错误的next值

4. 验证404页面的实际请求路径

DEBUG模式下,Django的404页面会显示当前请求的完整URL,确认跳转路径和配置的LOGIN_REDIRECT_URL是否完全一致,排查拼写错误(比如斜杠、单词拼写)。

5. 确认路由层级匹配

如果目标URL是/api/listsystemhazardcontrols/,需确保主路由里有api前缀的分发规则,确保层级对应。

内容的提问来源于stack exchange,提问作者HuddersfieldLad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 13:42:36