Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django正则表达式添加/?to URL.py中断静态链接_Python_Regex_Django - Fatal编程技术网

Python Django正则表达式添加/?to URL.py中断静态链接

Python Django正则表达式添加/?to URL.py中断静态链接,python,regex,django,Python,Regex,Django,尝试构建我的正则表达式以方便最可能的输入: urlpatterns = patterns('', url(r'^(?i)(a|b|c)-kit$', path), url(r'^(?i)a-kit/(a|b|c)$', path), ) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) 末尾的“/”会打断我的静态文件位置。模板选择正确,但静态文件路径被破坏,因为它将当前页面目录添加

尝试构建我的正则表达式以方便最可能的输入:

    urlpatterns = patterns('',
    url(r'^(?i)(a|b|c)-kit$', path),
    url(r'^(?i)a-kit/(a|b|c)$', path),
    ) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
末尾的“/”会打断我的静态文件位置。模板选择正确,但静态文件路径被破坏,因为它将当前页面目录添加为根目录。下面是settings.py的相关部分

  STATIC_ROOT = os.path.join(os.path.dirname(__file__), 'static')

  STATIC_URL = 'MySite/static/'

我的问题是这是如何发生的以及为什么会发生的,我们将非常感谢任何需要修复的链接或建议。

然后结束斜杠将由django自动处理。从:

追加斜杠

默认值:
True

当设置为
True
时,如果请求URL与任何 URLconf中的模式,并且它不会以斜杠结束,即HTTP 重定向被发送到同一URL并附加斜杠。注意 重定向可能导致POST请求中提交的任何数据被删除 迷路了

只有在启用了
CommonMiddleware
时,才使用
APPEND\u SLASH
设置 安装


我能够按照答案成功地解决我的问题

这解决了我的尾部斜杠问题,但不幸的是,同样的问题以另一种形式出现。我相信这与我的静态设置有关。我又添加了一些代码,请看一看。您是否正在运行
DEBUG=True
?是的,当然,问题是模板加载,但我的所有静态链接都会得到404,因为它会将以前的目录添加到路径中。没有要进行的调试。有什么想法吗?它在我添加到url.py的第二个链接上断开了。我所有的静态源最后都变成了
a-kit/mysite/static/css/normalize.css
,如果你有
DEBUG=True
(并且使用
runserver
),那么你就不需要添加静态文件处理程序;将其从
url.py中删除。