2024-06-12 09:46:53 发布
网友
我有一个webapp,它使用Flask Babel来翻译模板。 此webapp可以通过将数据库名称添加到其url来使用多个数据库,例如:
myapp.com/<dbname>
问题是翻译路径是硬编码在巴别塔:
巴贝尔强迫我进入名为“翻译”的目录和名为“翻译”的语言文件消息.mo““
我在网上试了很多遍,但仍然没有明确的解决办法。在
我想到的一个想法是,是否可以用babelex更改babel,然后我可以覆盖翻译路径?在
为什么不直接将flask babel源代码加载到您的项目中并对其进行修改?在
解决办法是安装烧瓶巴别莱克斯而不是巴别塔。在
。。。几年后,得到一条线索in github。从0.6版开始,Babel似乎有一个文档化很差的参数Babel_TRANSLATION_目录。那么烧瓶应用程序框架应该是
# example.py from flask import Flask app = Flask('example') # change path of messages.mo file app.config['BABEL_TRANSLATION_DIRECTORIES'] = 'i18n' # add translation capacity from flask.ext.babel import Babel babel = Babel(app) # define routes and so on ...
有了这个配置,Flask将首先在dir'i18n'中查找转换。在
一个非常基本的jinja模板
目录树有两种语言。文件夹消息.po应该包含“hello”的翻译
/myProject /i18n /en /LC_MESSAGES messages.po /fr /LC_MESSAGES messages.po example.py
奖励:多目录使用
app.config['BABEL_TRANSLATION_DIRECTORIES'] = 'i18n;second_dir;third_dir'
为什么不直接将flask babel源代码加载到您的项目中并对其进行修改?在
解决办法是安装烧瓶巴别莱克斯而不是巴别塔。在
。。。几年后,得到一条线索in github。从0.6版开始,Babel似乎有一个文档化很差的参数Babel_TRANSLATION_目录。那么烧瓶应用程序框架应该是
有了这个配置,Flask将首先在dir'i18n'中查找转换。在
一个非常基本的jinja模板
^{pr2}$目录树有两种语言。文件夹消息.po应该包含“hello”的翻译
奖励:多目录使用
相关问题 更多 >
编程相关推荐