我从根本上不明白manage.pycollectstatic是如何工作的。我的想法是你有路
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
最佳答案
看来collectstatic 复制得很好。
我认为您只需要使用 {% static "base.css"%}
模板标记,而不是尝试访问 STATIC_URL
变量
我认为 STATIC_URL
在模板范围内不可用。
你可以通过类似的操作来访问它
from django.conf import settings
settings.STATIC_URL
但是 {% static %}
标记可以为您完成此操作。看来django的版本很重要1.5looks like它使用 {% static %}
标记,但早期版本看起来在您注册了 RequestContext
时支持 STATIC_URL
。
关于django - 收集静电是如何进行的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18021302/