Django:为每个实例注册模板过滤器/标签

时间:2017-05-10 15:36:48

标签: python django templates django-templates

我使用Django Template低级库来解析一些字符串,如下所示:

[..]
from django.template import Template, Context
options = Template('''{{% autoescape off %}}{0}{{% endautoescape %}}'''.format(options)).render(Context(self.context))
[..]

所以,如果我有这样的模板实例:

template = Template('''{{% my_custom_tag %}} ''')

如何在我的执行上下文中以编程方式将my_custom_tag注册为simple_tag(django.template.Library.simple_tag())?我知道您可以使用django.template.Library()全局中注册它,但我只想在此上下文中使用此标记(或过滤器)。

谢谢

1 个答案:

答案 0 :(得分:1)

目前尚不清楚为什么要这样做。

注册模板标记并不意味着您可以使用任何特定模板。为此,您必须在其包含的templatetags文件中调用{% load %}。因此,如果您不希望标记在模板中可用,请不要加载它。