Django的CopyBlock标签

时间:2009-07-29 01:32:35

标签: python django templates django-templates

如何为Django模板编写标签“copyblock”?

对于这样的功能:

<title> {% block title %} some title... {% endblock %} </title>
<h1>{% copyblock title %}</h1>

2 个答案:

答案 0 :(得分:1)

看看这个问题中提到的解决方案:

答案 1 :(得分:1)

Django的模板解析器不会按名称公开块。相反,它们被组织成Django Template的{​​{1}}中的树结构,在模板节点堆栈上呈现nodelistpush ping。您将以示例所示的方式访问它们几乎不可能。

ars引用的SO链接提供了有关最佳解决方案的建议。在这些解决方案中,在上下文中定义变量(即:在您的示例的精神中:pop)可以重用可能是最直接和可维护的方法。如果你要复制的作品超出了一个简单的变量,那么custom template tag可能是最吸引人的选择。