说我有一个包含很多重复代码的模板。很简单:
<tr>
<td>ITEM 1</td>
<td>ITEM 2</td>
</tr>
Django中是否有一种方法可以创建快捷方式或mixin,从而允许我定义结构并将变量传递给它?例如
{% mixin 'mymixin' %}
<td>$value</td>
{% end mixin %}
然后在html
中使用它,例如:
<tr>
{% use_mixin 'mymixin' 'ITEM 1' %}
{% use_mixin 'mymixin' 'ITEM 2' %}
</tr>
我想在模板中完成所有这些操作,而不是弄乱我的视图,这样我就可以快速删除一些线框。
答案 0 :(得分:1)
通常使用{% include ... %}
template tag [Django-doc]完成此操作。例如,您可以定义一个td.html
模板文件,例如:
<td>{{ value }}</td>
然后在另一个文件中,您可以使用该文件,例如:
<tr>
{% include 'td.html' with value='ITEM 1' %}
{% include 'td.html' with value='ITEM 2' %}
</tr>
在这里您可以在另一个文件中重用模板文件。也可以在此类模板文件中定义{% include ... %}
标签,从而构造包含的“层次结构”。