レイアウトテンプレートに柔軟性を追加したいが、それを行う方法が見つからない。これはDjangoの 'extended'テンプレートに変数を渡す方法ですか?
私はextend
レイアウトテンプレートに変数を設定する方法を探しています。つまり、テンプレートツリー内で変数を上にずらすことはできません。
# views.py
def my_view_func(request):
return render(request, "child.html")
# child.html
{% extends 'layout.html' with show_sidebar=True sidebar_width_class="width_4" %}
<div>Templates stuff here</div>
# layout.html
{% if show_sidebar %}
<div class="{{ sidebar_width_class }}">
{% block sidebar %}{% endblock %}
</div>
{% endif %}
私は今、数行のコードで差の4つのテンプレートを維持する必要があります。たとえば、サイドバーの幅クラスによって互いに異なる2つのテンプレートがあります。私は何か間違っているのですか?
@xpy:
そして、あなたの子テンプレートに。私の質問では、私はレイアウトテンプレートを変数で拡張する方法を探しています。すなわち、変数をテンプレートツリー内で上に移動させずに渡します。 –
申し訳ありませんが、誤解されています。 – xpy
コンテキスト 'render(request、" child.html "、{'sidebar_width':" width_4 "})'で変数を渡さないのはなぜですか? –