gpt4 book ai didi

python - Babel 无法识别语言支持的 jinja2 提取方法

转载 作者:太空狗 更新时间:2023-10-29 22:05:52 27 4
gpt4 key购买 nike

我正在为我的项目添加语言翻译支持。代码在 Python 上,在 html 文件和 Javascript 中有 jinja2。

我正在尝试使用 Babel 进行翻译,但它无法识别 jinja2 的提取方法。也许我使用的名称不正确。

这是我的 ini 文件:

# Extraction from Python source files
[python: **.py]
# Extraction from Jinja2 template files
[jinja2: **.html]
# Extraction from JavaScript files
[javascript: **.js]
extract_messages = $._, jQuery._

这是我收到的错误;

C:\>python Babel-0.9.6/babel/messages/frontend.py extract --project=GV --version=1 --no-location -o locale\messages.pot -F babel.ini frontend te
mplates
extracting messages from frontend\__init__.py
INFO:babel:extracting messages from frontend\__init__.py
...
Traceback (most recent call last):
File "Babel-0.9.6/babel/messages/frontend.py", line 1208, in <module>
main()
File "Babel-0.9.6/babel/messages/frontend.py", line 1107, in main
return CommandLineInterface().run(sys.argv)
File "Babel-0.9.6/babel/messages/frontend.py", line 651, in run
return getattr(self, cmdname)(args[1:])
File "Babel-0.9.6/babel/messages/frontend.py", line 912, in extract
for filename, lineno, message, comments in extracted:
File "c:\Python27\lib\site-packages\babel-0.9.6-py2.7.egg\babel\messages\extract.py", line 172, in extract_from_dir
strip_comment_tags):
File "c:\Python27\lib\site-packages\babel-0.9.6-py2.7.egg\babel\messages\extract.py", line 202, in extract_from_file
strip_comment_tags))
File "c:\Python27\lib\site-packages\babel-0.9.6-py2.7.egg\babel\messages\extract.py", line 271, in extract
raise ValueError('Unknown extraction method %r' % method)
ValueError: Unknown extraction method 'jinja2'
Press any key to continue . . .

有什么想法吗?谢谢,嘎迪

最佳答案

我看到您的问题仍未得到解答。您的问题看起来与我重新安装开发环境后遇到的问题类似:

$ pybabel extract -F babel.cfg -o messages.pot .
extracting messages from admin.py
:
extracting messages from templates/404.html (extensions="jinja2.ext.autoescape,jinja2.ext.with_")
Traceback (most recent call last):
File "/usr/local/bin/pybabel", line 9, in <module>
load_entry_point('Babel==0.9.6', 'console_scripts', 'pybabel')()
File "/usr/local/lib/python2.7/dist-packages/Babel-0.9.6-py2.7.egg/babel/messages/frontend.py", line 1107, in main
return CommandLineInterface().run(sys.argv)
File "/usr/local/lib/python2.7/dist-packages/Babel-0.9.6-py2.7.egg/babel/messages/frontend.py", line 651, in run
return getattr(self, cmdname)(args[1:])
File "/usr/local/lib/python2.7/dist-packages/Babel-0.9.6-py2.7.egg/babel/messages/frontend.py", line 912, in extract
for filename, lineno, message, comments in extracted:
File "/usr/local/lib/python2.7/dist-packages/Babel-0.9.6-py2.7.egg/babel/messages/extract.py", line 171, in extract_from_dir
strip_comment_tags):
File "/usr/local/lib/python2.7/dist-packages/Babel-0.9.6-py2.7.egg/babel/messages/extract.py", line 201, in extract_from_file
strip_comment_tags))
File "/usr/local/lib/python2.7/dist-packages/Babel-0.9.6-py2.7.egg/babel/messages/extract.py", line 270, in extract
raise ValueError('Unknown extraction method %r' % method)
ValueError: Unknown extraction method 'jinja2'

原来是我忘记安装了jinja2 .由于服务器环境已经安装了它,所以我没有首先注意到它。在installing之后jinja2 有:

$ sudo pip install jinja2

提取将完成:

$ pybabel extract -F babel.cfg -o messages.pot .
extracting messages from admin.py
:
extracting messages from test/item_tests.py
writing PO template file to messages.pot

关于python - Babel 无法识别语言支持的 jinja2 提取方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12046998/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com