http://djangosnippets.org/snippets/2421/处的此示例按原样运行。
放置在templates / includes / tabs.html
中 <ul class="tab-menu">
<li class="{% if active_tab == 'tab1' %} active{% endif %}"><a href="#">Tab 1</a></li>
<li class="{% if active_tab == 'tab2' %} active{% endif %}"><a href="#">Tab 2</a></li>
<li class="{% if active_tab == 'tab3' %} active{% endif %}"><a href="#">Tab 3</a></li>
</ul>
放置在page.html模板中
{% include "includes/tabs.html" with active_tab='tab1' %}
变量从页面模板传递到tabs.html。
您将如何从以下位置传递活动标签变量:
- page.html (pass active tab1)
- extends base.html
- includes tabs.html (how to get it here.)
答案 0 :(得分:0)
在您的base.html
中,您可以拥有{% block tabs %}
:
{% block tabs %}{% endblock %}
在您的page.html
:
{% extends "base.html" %}
{% block tabs %}
{% include "includes/tabs.html" with active_tab='tab1' %}
{% endblock %}
如果这还不够DRY你可以为你的标签创建一个自定义inclusion tag。