我刚刚将我的存储后端更改为Amazon S3,我意识到我的后台未加载到我的网站。我查看并意识到在我的CSS(实际上是SASS)中我已经指定了后台URL(static/mysite/images/background.gif
)。
我想知道如何解决这个问题。当然我可以将其更改为我的新静态URL,但这似乎是一种不好的做法。所以我尝试在我的{{ STATIC_URL }}
HTML中加载我的背景图片body
,然后在repeat: no-repeat;
渲染我的实际CSS之前首先渲染我的背景,导致背景重复在CSS加载的同时在整个屏幕上。无论如何,我不喜欢将我的风格混合到我的文档中。
那么在Django中为背景图像提供相对路径的最佳方法是什么?我应该将CSS设置为模板,并通过视图指向它吗?这似乎也很混乱。
或者我应该忘记让它与static_url无关,只是硬编码我的CSS中的东西?
答案 0 :(得分:8)
它允许您直接在模板中渲染CSS片段,最终组合成单个文件,或者您甚至可以指定选项以使用django的模板引擎和上下文解析CSS文件: http://django_compressor.readthedocs.org/en/latest/settings/#django.conf.settings.COMPRESS_CSS_FILTERS
这很神奇,值得一试,因为在管理CSS时你不需要考虑性能。