我从根本上不了解manage.py collectstatic的工作原理。我的想法是你有路径
project/app/static/app/base.css
并运行collectstatic并将它们复制到/ staticfiles /文件夹,然后{{STATIC_URL}}可以访问它。我试过这个,似乎没有找到base.css。
以下是我的变量供参考:
basepath = os.path.split(os.path.abspath(__file__))[0]
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(basepath, 'staticfiles')
<link rel="stylesheet" type="text/css" href="{{ STATIC_URL }}base.css" />
在尝试获取样式表时,所有这些都会导致404错误:
"GET /base.css HTTP/1.1" 404 2255
答案 0 :(得分:2)
似乎collectstatic正在复制它。
我认为您只需要使用{% static "base.css" %}
模板标记,而不是尝试访问STATIC_URL
变量
我认为STATIC_URL
在模板范围内不可用。
您可以像
那样访问它from django.conf import settings
settings.STATIC_URL
但是{% static %}
标记会为您执行此操作。似乎django的版本很重要1.5 looks like它使用{% static %}
标记,但是当STATIC_URL
注册时,早期版本看起来支持RequestContext
。