関連するすべてのタグ(つまり、スクリプト、スタイル、リンクrel = stylesheet)をdjango_compressorタグで自動的にラップする方法はありますか?
1 に答える
4
編集: Chris Pratt のコメントに合わせて更新。ありがとうクリス。
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 をこれらのブロックにシャッフルできます (それらを必要とするテンプレートに保持したまま)。
于 2012-05-24T14:41:22.330 に答える