【发布时间】:2012-05-18 05:58:41
【问题描述】:
使用 django,使用 jinja2 进行渲染和 babel 进行消息提取
我有一些需要国际化的 js 文件。我一直无法弄清楚从它们中提取消息的语法,这也可以让 jinja2 呈现它们。 jinja2 必须学习阅读可提取的语法,或者我必须从 jinja2 可以呈现的内容中提取。 (或者,完全以另一种方式进行)
提取
如果我在 js 中用
标记消息gettext('message')
它提取得很好。
渲染
但是 jinja2 不会替换 js 中的 gettext 调用(我在返回之前使用 jinja2 渲染 js 模板)——它需要类似
{% trans %}message{% endtrans %}
但是,该语法不能用于提取消息。
Babel 正在使用来自 babel.messages 的函数 extract_javascript 来提取消息,这看起来并不适合处理这种类型的标签。
【问题讨论】:
标签: python django internationalization jinja2 python-babel