我的django网址只有在我的网址后面使用斜线才有效。在以下两个中,只有第二个工作。第一个不起作用:
1)。 http://10.165.19.167:8000/downloady9cHTML/Intro.html/
2)。 http://10.165.19.167:8000/downloady9cHTML/Intro.html
如果我想要第二个网址,我该怎么办?即我不想在我的网址末尾添加反斜杠?
谢谢..
答案 0 :(得分:2)
如果您不想要斜杠,请不要在URL模式中添加斜杠。
url(r'^downloady9cHTML/(?P<file_name>.*)$', ...)
答案 1 :(得分:1)
你需要Django的 APPEND_SLASH
如果设置为True,如果请求URL与URLconf中的任何模式都不匹配且它不以斜杠结尾,则会向相同的URL发出HTTP重定向并附加斜杠。请注意,重定向可能会导致POST请求中提交的任何数据丢失。
编辑
url(r'^downloady9cHTML/(?P<file_name>.*)/$', app.views.download_y9cfile1)
到
url(r'^downloady9cHTML/(?P<file_name>.*)', app.views.download_y9cfile1)
最后删除了/$
。正则表达式$
的原因是正则表达式结束。这意味着您明确告诉它与\
匹配。如果您只删除\
,则它仅适用于第二个网址(在您的问题中)。如果您删除\$
,它将适用于两个网址。