Django中Panda检测不到新增URL端点问题求助
解决Django新增视图后页面未找到的问题
问题根源在于URL路径的匹配规则:你在products/urls.py里配置的是path('new', views.new),但访问的URL是http://127.0.0.1:8000/products/new/(末尾带斜杠),Django的path()方法会进行精确匹配,所以带斜杠的路径无法匹配到定义的new规则。
给出两种可行的解决方式:
- 方式一:修改
products/urls.py,给路径加上末尾斜杠,符合Django的URL规范:
urlpatterns = [ path('', views.index), path('new/', views.new) # 添加末尾斜杠 ]
修改后再访问http://127.0.0.1:8000/products/new/就能正常匹配到视图。
- 方式二:保持现有URL配置不变,访问时去掉路径末尾的斜杠,即访问
http://127.0.0.1:8000/products/new
注:如果你的Django项目settings.py中APPEND_SLASH设置为True(默认值),理论上会自动将不带斜杠的路径重定向到带斜杠的版本,但显式配置带斜杠的路径是更稳妥的做法,避免因配置变更导致的问题。
内容的提问来源于stack exchange,提问作者GeneSwini
相关产品推荐
相关产品推荐

