问题标签 [flask-babel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Flask App 不调用 Babel localeselector
我正在使用 Flask-Babel 为我的 Flask 应用程序添加本地化,但我似乎无法更改语言。我按照所有 Babel 说明创建 po/mo 文件 - 我不相信我的问题与翻译数据有关......我不知道如何更改语言......这似乎会/应该很明显。
我的调试显示babel.localeselector
没有被调用。我的实现调用refresh()
,我认为应该调用babel.localeselector
(不知何故......因为我看不到它是如何工作的,因为该refresh()
命令似乎只是从应用程序上下文中删除了一些键......我不知道这是如何触发调用的到babel.localeselector
)
并且,当用户登录时,调用此函数,
我已经确认refresh()
正在被调用。但是语言没有变。
更新:也试过这个,
flask - serverless-python-requirements 抛出错误无法链接 babel
我最近在我的无服务器烧瓶应用程序中添加了 flash babel,当我使用 sls wsgi serve 在本地运行时,一切正常。但是当我运行无服务器部署时,打包步骤失败并显示以下消息:
我的需求文件如下所示:
任何帮助将不胜感激..谢谢..
flask - Flask-Babel 转换 Flask-WTF SelectField
我想用Flask-Babel转换Flask-WTF SelectField 值。
这是我的代码片段:
在那里,我想用Flask-Babelchoices
本地化 SelectField值和 QuerySelectFieldquery_factory
值。
是否有可能..?,如果是这样,任何示例或参考教程将不胜感激:)
python - Flask Babel 插入数据库时转换为原始语言
我有一组带有Flask-WTF的 SelectField ,并使用Flask-Babel转换默认语言。
这是我的代码片段:
这是我的模型:
当我尝试将Flask-WTF表单中的值插入我的数据库时,我遇到了一些错误。
这是我如何将其插入数据库的片段:
的值enum
PENDING
也在我的浏览器上转换为首选语言的语言,所以我收到了以下错误消息:
sqlalchemy.exc.StatementError: (builtins.LookupError) "MENGUNGGU" 不在定义的枚举值中
欲了解更多信息:“MENGUNGGU”= 是印尼语,表示英语中的“PENDING”。
所以这里的问题是,当我插入SelectField
值时,它还会将该语言转换为我喜欢的浏览器语言,而我的PostgreSQL数据库会阻止它,因为我没有在我的枚举类型上定义值。
所以,我的问题的重点是,当我们想将值插入数据库时,我们是否可以从Flask-Babel中排除 i18n 和 l10n 值......?或者我应该怎么做才能面对这个......?
python - Flask-Babel localeselector 没有被调用
Flask-babel 甚至不会调用它的 localeselector 一次。我正在使用应用程序工厂来初始化我的应用程序。根据文档,翻译文件夹在我的应用程序中,它是由 babel 创建的。我还尝试将翻译目录移动到包含 run.py 的文件夹,该文件夹调用工厂,但没有效果。
这是关于 babel 的配置部分:
到目前为止,我只遵守了 EN,试图更改默认值,但它也没有做任何事情。似乎 babel 无法找到翻译文件夹,我不知道如何解决这个问题。
python - 如何在单击按钮时更改烧瓶 babel 的语言?
我在 Flask 中有这个功能,它以英文返回网站。此外,我希望能够通过 html 按钮在网站上使用德语。如何通过按钮将语言从英语更改为德语,从德语更改为英语?此外,是否可以仅在调用时使用函数 get_locale,而不是自动运行?
python - 如何在 Flask 中使用翻译?
我有一个应用程序,我设法使用罗马尼亚语和英语的翻译。我想按下“英语”按钮并将网站翻译成英文,当按下“罗马尼亚语”时,网站应该翻译成罗马尼亚语。到目前为止,我已经做到了这一点,但是每当我点击英语或罗马尼亚语时,网站都会转到主页。如何将烧瓶页面重定向到当前页面,例如联系页面?现在,如果我在联系页面上并按英语,该网站会被翻译成英语,但会将我重定向到主页。我正在使用 Flask Babel 进行翻译。对于按钮,我在 index.html 中有代码:
app.py 中用于翻译的代码是:
编辑:解决方案:
python - 可以创建自定义语言环境,例如 fr_EN?
我正在寻找为我的网站创建自定义语言环境的可能性。该网站有多种语言版本,包括法语。该网站的法语版本具有特定于法国且不以其他语言呈现的特定内容。但是,我需要将这个法语版本翻译成英语(因此,有一个法语网站的英语版本 - > fr_EN 或 en_FR)。
这在 Flask Babel 中可能吗?或者我将如何解决这个问题?
python - Flask Babelex 0.9.4 和 % 转义
在Flask
我们最近升级Werkzeug
到 1.0.1 的应用程序中(因此我们可以在 cookie 上设置相同的站点),这强制了一些依赖项,其中Flask-BabelEx==0.9.4
.
在这次升级之后,转义 %(百分号)的处理方式发生了非常令人不安的变化。gettext('foo %%')
以前是 return的地方*"foo %"*
,现在是 return ,*"foo %%"*
也就是说 % 符号的转义似乎没有处理。我想,好吧,有点向上不兼容,我们只需要替换 babel 字符串中的所有%%
by %
(在参考语言以及所有翻译中,这已经很重要了)。
但这还不是故事的结局,因为对于Jinja2 模板中使用的所有 babel 字符串,例如{{ _("This is a percent sign: %") }}
,仍然处理符号的转义%
,所以仍然需要 {{ _("This is a percent sign: %%") }}
. 那么我们是否必须%
根据它们的使用位置来处理 - 转义和非转义的 babel 字符串?是否有某个地方可以缓解这个逃逸问题。