在具有Jinja2的金字塔项目中使用Babel

问题描述 投票:3回答:1

我有一个使用Jinja2的Pyramid项目。我正在尝试通过将以下内容添加到setup.py

中使用Babel
message_extractors = { '.': [
            ('**.py', 'python', None ),
            ('static/**', 'ignore', None),
            ('resources/**', 'ignore', None),
            ('climmob3/templates/**.html', 'jinja2', None),
            ('FlatLab/**', 'ignore', None),
            ]},

而且我有一个带有]的setup.cfg文件>

[compile_catalog]
directory = climmob3/locale
domain = climmob3
statistics = true

[extract_messages]
add_comments = TRANSLATORS:
output_file = climmob3/locale/climmob3.pot
width = 80

[init_catalog]
domain = climmob3
input_file = climmob3/locale/climmob3.pot
output_dir = climmob3/locale

[update_catalog]
domain = climmob3
input_file = climmob3/locale/climmob3.pot
output_dir = climmob3/locale
previous = true

但是我什么时候跑

python setup.py extract_messages

我可以看到它试图从模板文件(.html)中提取消息,但是它不能识别_或{%trans%},因此.pot文件为空

我需要做些额外的事情吗?

我有一个使用Jinja2的Pyramid项目。我正在尝试通过在setup.py message_extractors = {'。'中添加以下内容来使用Babel:[('**。py','python',None),('static / * ...

python jinja2 pyramid babel
1个回答
0
投票

由于默认情况下输出为Verboese,因此您应该看到通过并识别的所有.html文件。如果没有,则在message_extractors中设置的路径与结构不匹配。 python setup.py extract_messages命令是相对的,因此climmob3/templates/**.html例如应与运行该命令的文件夹位于同一文件夹中。

© www.soinside.com 2019 - 2024. All rights reserved.