Django配置路由后,为什么输入http://127.0.0.1:8000/ 网址后报错了?

问题探讨:为什么输入http://127.0.0.1:8000/ 网址后报错了?

翻译一下:

屏蔽一下新加的路由

发现界面正常了

现在翻译一下:

分析: 需要满足两个条件才会显示上述界面:

  • setting.py 文件中 DEBUG=True
  • setting.py 文件中urlpatterns 为初始值

因此: 虽然项目默认 DEBUG=True,但由于在 urlpatterns 中已经配置了其他路由(path("hello/", views.say_hello)),并不满足上述两个条件。同时,未在 urlpatterns 中配置默认路由(例如:path('', views.home)),当用户访问根路径 / 时,Django 将无法找到匹配的视图,因此会出现报错。
⭐注意 写成:path('/',views.home)也不对!!

Django 的 URL 路径不需要也不接受斜杠 / 作为路径的开头。Django 会自动处理 URL 路径的斜杠问题,因此在 path() 中的第一个参数应当直接写路径片段,而不包含开头的斜杠。

深究:

如果想要深入研究为什么会这么显示,请参考django源码:

相关推荐
Victor3561 小时前
MongoDB(118)如何在升级过程中进行数据备份?
后端
手握风云-1 小时前
Spring AI:让大模型住进 Spring 生态(三)
java·后端·spring
Victor3561 小时前
MongoDB(117)如何从旧版本迁移到新版本?
后端
pe7er4 小时前
window管理开发环境篇 - 持续更新
前端·后端
做怪小疯子8 小时前
华为笔试0429
python·numpy
Warson_L8 小时前
Dictionary
python
陈随易9 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
寒山李白10 小时前
解决 python-docx 生成的 Word 文档打开时弹出“无法读取内容“警告
python·word·wps·文档·docx·qoder
陈随易10 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
2401_8323655211 小时前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python