Django Compressor离线继承

Cos*_*smo 6 django inheritance offline django-compressor

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

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

{% compress %}
    {% block css %}
    {% endblock %}
{% endcompress %}
Run Code Online (Sandbox Code Playgroud)

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

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

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

Django压缩器和模板继承

django-compressor是否可以使用模板继承?

Jia*_*aro 0

您必须使用离线压缩才能使该技术发挥作用,但只要您正确设置了缓存,django-compressor 就不会在每个请求上重新压缩,除非资源已更改。

我已经使用这种技术来允许用户使用lesscss来扩展站点主题并使用我们的 mixins 等。开始工作有点不稳定,但(根据我到目前为止的经验)如果配置正确,它是完全稳定的,并且不会引入第一次压缩后,请求延迟会很大。

您可以设置诸如pingdomblastellanew relic 之类的服务来访问各个页面,以确保压缩的资源始终在缓存中(它们监视正常运行时间,但也适用于此)