Django Compressor离线继承

时间:2012-06-20 21:21:54

标签: django inheritance offline django-compressor

此问题专门针对使用Django Compressor的生产站点。我想在COMPRESS_OFFLINE = True时使用它,这样我就可以在推送到生产之前预先压缩我所有网站的css文件。

我想在base.html中做相同的事情:

{% compress %}
    {% block css %}
    {% endblock %}
{% endcompress %}

以便扩展base的文件中的所有css块都被压缩。这主要是因为我不必将{%compress%}标签添加到我的所有子模板中。

Stack Overflow上有几个类似的问题,但在离线压缩时(例如使用Django Compressor的压缩管理命令),我没有找到一个很好的解决方案。当COMPRESS_OFFLINE = False时,周围的压缩标签工作正常。有人找到了让这项工作脱机的方法吗?

我列出了一些似乎与非离线解决方案有关的类似线程。第二个线程中的链接表明在离线使用Django Compressor时已经存在继承问题,但可能已经解决了这些问题:

Django-compressor and template inheritance

Does django-compressor work with template inheritance?

1 个答案:

答案 0 :(得分:0)

你已经使用离线压缩技术来工作,但只要你正确设置了缓存,django-compressor就不会在每个请求上重新压缩,除非资源已被更改。

我已经使用这种技术允许用户使用lesscss扩展网站主题并使用我们的mixins等。工作有点不稳定但是(根据我的经验到目前为止)它在配置时非常稳定正确地说,并且一旦第一次压缩,就不会引入大量的请求延迟。

您可以设置pingdomblamestellanew relic等服务来点击各种页面,以确保压缩资源始终位于缓存中(它们会监控正常运行时间,但可以这也是)