0

所以我经常不得不在我的 Django 模板中使用类似下面的东西:

{% include "conname.html" %}

我希望能够拥有自己的标签,而只需要输入类似

{% conname %}

是否有一种简单的方法来设置某种别名,以便模板引擎看到conname它知道实际上应该是特定包含标签的标签?

4

1 回答 1

0

很简单,在一个模块中只需添加以下代码(我的通常称为 custom_tags.py:

from django import template

register = template.Library()

@register.simple_tag
def conname():
    return '''{% include "conname.html" %}'''

#to make it available everywhere (i generally add this to my urls.py
from django.template.loader import add_to_builtins
#this will be aded to all templates
add_to_builtins('custom_tags')

在您的模板中,您只需使用{% conname %} 或者您可以使其更复杂并以编程方式调用IncludeNode,但这有点过头了。

于 2013-01-10T02:53:47.943 回答