Django URL不匹配问题求助:请求路径join为何无法匹配/join?
问题原因及解决方法
原因
Django的path()函数定义URL模式时,不能在路径开头加斜杠(/)。Django处理请求路径时,会自动忽略URL开头的斜杠,实际用来匹配的路径是join,而你定义的path('/join', ...)要求匹配的是包含开头斜杠的/join,两者不匹配,所以出现404错误。
解决方法
修改URLconf,去掉每个path路径开头的斜杠即可:
from django.urls import path from .views import index urlpatterns = [ path('', index), path('join', index), path('create', index) ]
Django的URLconf设计逻辑是,每个path的路径段对应域名后的路径部分,无需额外添加开头斜杠,这样也能避免出现重复斜杠的无效路径。
内容的提问来源于stack exchange,提问作者John Vining
相关产品推荐
相关产品推荐

