有没有办法用django_compressor标签自动包装所有相关标签(即脚本,样式,链接rel =样式表)?
答案 0 :(得分:3)
编辑:根据Chris Pratt的评论更新。谢谢Chris。
使用base.html中的模板块来定义{%extra_js%}和{%extra_css%}块,然后将这些块放在django-compressor块中。对于压缩机内爆炸的东西(例如Twitter Bootstrap),你可能也想要{%extra_js_nocompress%}和{%extra_css_nocompress%}块
所以,在你的base.html中的某个地方(理想情况下,CSS高位和JS低位):
{% compress css%}
<link rel="stylesheet" href="{{ STATIC_URL }}foo/bar.css">
<!-- any other global CSS here too -->
{% endcompress %}
{% compress css%}
{% block extra_css %}{% endblock %}
{% endcompress %}
{% block extra_css_nocompress %}{% endblock %}
{% compress js%}
<script type="text/javascript" src="{{ STATIC_URL }}js/waa/baa.js"></script>
<!-- any other global JS here too -->
{% endcompress %}
{% compress js%}
{% block extra_js %}{% endblock %}
{% endcompress %}
{% block extra_js_nocompress %}{% endblock %}
然后,在您的模板中,如果模板扩展了base.html,您可以将所有模板内的CSS和JS混合到这些块中(同时仍然将它们保存在需要它们的模板中)