django 如何在Jinja2中启用'trimmed'策略?

92dk7w1h  于 2022-12-24  发布在  Go
关注(0)|答案(1)|浏览(119)

我正在尝试为Jinja 2中的所有{% trans %}块启用trimmed关键字。我添加了env.policies['ext.i18n.trimmed'] = True(可在此处找到:https://jinja.palletsprojects.com/en/3.0.x/api/#policies),但是没有任何React。在我的项目中,我使用Babel与Jinja 2和Django来提取消息。
下面是我的环境配置:

def environment(**options):
     env = Environment(
         **options,
         extensions=[
             'compressor.contrib.jinja2ext.CompressorExtension',
             'jinja2.ext.autoescape',
             'sass_processor.jinja2.ext.SassSrc',
             'jinja2.ext.i18n',
         ]
     }

     env.policies['ext.i18n.trimmed'] = True
     env.install_gettext_callables(gettext=gettext, ngettext=ngettext)

     env.globals.update(globals)
     env.filters.update(filters)
     return env
esyap4oy

esyap4oy1#

我不知道一年后这会有多大用处,但如果其他人遇到此问题,您可以通过添加以下内容来提取策略

trimmed = True

到你的BabelMap配置。
我不确定这是否有文档记录,但是Babel集成文档中描述的入口点会检查字符串“trimmed”,以便在查看源代码时启用环境策略。

相关问题