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

如何在保留Django Admin默认路径的前提下正确配置自定义URL 'admin/success/'

如何在保留Django Admin默认路径的同时配置admin/success/自定义URL?

这个问题我之前也碰到过,核心原因就是Django的URL路由匹配顺序在搞鬼!

问题根源

你最开始把path("admin/", admin.site.urls)放在了自定义URL的前面,Django的URL匹配是从上到下按顺序执行的:当你访问admin/success/时,系统会先匹配到admin/这个路径,然后把后面的success/部分交给Django Admin的内部路由去处理,但Admin的路由表里根本没有success/这个路径,自然就返回404错误了。而注释掉Admin路径后,自定义URL就能被正常匹配到,所以可以显示内容。

解决方案

只需要调整一下URL的顺序,把你的自定义admin/success/路径放在admin/路径的前面就可以了:

# core/urls.py
urlpatterns = [
    # 自定义URL优先匹配
    path("admin/success/", success, name='success'),
    # Admin默认路径放在后面
    path("admin/", admin.site.urls),
]

调整后效果:

  • 访问admin/success/时,会优先触发你的自定义视图,返回"Hello World"
  • 访问admin/时,依然会正常匹配到Django Admin的后台路由

小提醒

如果之后还要添加其他以admin/开头的自定义URL,记得都要把它们放在path("admin/", admin.site.urls)的前面,避免被Admin的路由拦截哦~

内容的提问来源于stack exchange,提问作者Super Kai - Kazuya Ito

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 20:32:52