Css 如何在django 1.8中链接到站点范围的静态文件?
当前结构:Css 如何在django 1.8中链接到站点范围的静态文件?,css,django,static,Css,Django,Static,当前结构: MySite |--MySite | |--static | |--MySite | |-- site_wide.css |--MyApp |--static |--MyApp |-- app_specific.js |-- app_specific.css settings.py: STATIC_URL =
MySite
|--MySite
| |--static
| |--MySite
| |-- site_wide.css
|--MyApp
|--static
|--MyApp
|-- app_specific.js
|-- app_specific.css
settings.py:
STATIC_URL = "/static/"
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "/MySite/static/"),
)
使用以下代码,我能够成功链接到app\u specific.js
和app\u specific.css
,但无法链接站点范围的css
{% load staticfiles %}
<link rel="stylesheet" type="text/css" href="{% static 'MyApp/app_specific.css %}" />
<link rel="stylesheet" type="text/css" href="{% static 'MySite/site_wide.css' %}" />
... site body ...
<script type="text/javascript" src="{% static 'MyApp/app_specific.js' %}" ></script>
这是不存在的
我目前的理解是,django将在STATIC\u URL
定义的路径中搜索我的链接文件,然后(如果未找到)在SATICFILES\u DIRS
中列出的路径中前进,但它显然从未查看STATICFILES\u DIRS
中指定的路径
我是django的新手,想了解它是如何工作的。其他一些类似的问题提到了诸如collectstaticfiles
之类的东西,但都非常不清楚
任何帮助都将不胜感激
另外,我所知道的一切都是来自官方Django 1.8教程/文档,所以请不要发布不推荐的答案。仅限1.8。尝试将
os.path.join(基本目录,/MySite/static/)
更改为os.path.join(基本目录,/MySite/static/)
,i。E删除转发/
。我想原因在于os.path.join
的工作方式
>>> os.path.join('/foo', '/bar')
'/bar'
>>> os.path.join('/foo', 'bar')
'/foo/bar'
>>> os.path.join('/foo', '/bar')
'/bar'
>>> os.path.join('/foo', 'bar')
'/foo/bar'