我遇到了Django网址格式的问题。
当我在索引URL的末尾添加'/'时,该页面返回404错误(找不到页面),如果我从URL的末尾删除'/',那么页面工作正常。< / p>
管理页面的网址无法重现此问题,有人可以解释发生了什么吗?
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$/',index),
]
答案 0 :(得分:4)
$
:表示字符串的end,因此,之后的生活没有可能性。
匹配字符串的结尾或者在结尾处的换行符之前 字符串
^
匹配字符串的开头,因此,根^$
中的urls.py
表示Django:除了域/我之外,我不想要任何内容基本名称然后Django会将请求路由到您的索引页面。
答案 1 :(得分:2)
url django.conf.urls
包接受正则表达式作为第一个参数的方法
$
代表正则表达式中字符串的 end ,因此之后的任何字符都不会被视为与url字符串匹配。
答案 2 :(得分:0)
据我所知,在django网址中:
&#39; $&#39; :字符串的结尾,这是在正则表达式中使用
&#39; ^&#39; :它也用于正则表达式匹配url的起始
答案 3 :(得分:-1)
在网址模式中不会考虑 $ 之后的字符 因此改为:
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^/$',index),
]