自定义标签在开始和结束时执行某些操作

时间:2012-03-28 13:31:39

标签: django django-templates

我正在编写一个自定义标记来创建动态css和其他html格式化容器html块。基本上,我的想法是我想要一些样板HTML嵌套在html块的“肉”周围。例如,假设我有一个表,然后我想在它周围嵌入一些div(或可能是其他东西)。这些div并不总是相同,但通常是相同的。

我想要的是结束标记,例如,{% endtag %}也可以做一些事情。

标签的开头似乎很容易,可以使用包含来完成。

为了证明我的想法,这里有一些没有标签的HTML:

<div class=someclass>
    <table class=someclass id=someid>
        stuff here
    </table>
</div>

相反,使用标签,它看起来像这样:

{% customtag arg %}
    <table class=someclass id=someid>
        stuff here
    </table>
{% endcustomtag %}

在上面的演示中,customtag和endcustom标签分别呈现div的相应部分。

简而言之:

是否可以使用{% endXXX %}或其他一些机制在块的末尾呈现HTML?