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

标签 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() 全局注册它,但我只希望在此上下文中使用此标签(或过滤器)。

谢谢

最佳答案

目前尚不清楚您为什么需要这个。

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

关于python - Django:为每个实例注册模板过滤器/标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43897059/

相关文章:

python - 添加日期匹配的列表元素 (Python)

python - 将 Python 类对象编译到列表中

Python子集和切片 [index, :] format

django - 如果在生产和开发中使用不同的 RDBMS(例如 PostgreSQL),什么时候不应该在 Django 中使用 SQLite 进行测试?

python - 服务器错误 500 Wagtail-admin

c++ - 模板相关的类型定义

python - 使用 py2exe 创建的 exe 不工作并返回有错误的日志文件

python - 可能包含 None 的 Django 过滤器

c++ - GCC : sorry, 未实现:重整过载

c++ - 为什么模板只能在头文件中实现?