【问题标题】:Translate default errors in Flask-WTF翻译 Flask-WTF 中的默认错误
【发布时间】:2013-09-19 05:44:09
【问题描述】:

我正在尝试使用 Flask-WTF 插件翻译来自 WTForms 的默认消息。 据此(https://github.com/ajford/flask-wtf/pull/65)它应该可以工作。您还可以看到 wtforms 使用 gettext 作为其默认错误消息 (https://bitbucket.org/simplecodes/wtforms/src/113994790508/wtforms/validators.py)。

我将 WTF_I18n_ENABLED 添加到我的配置文件中,并使用以下命令创建了我的 .po 文件

pybabel extract -F babel.cfg -k lazy_gettext -o messages.pot myapp
pybabel init -i messages.pot -d myapp/translations -l en
pybabel compile -d myapp/translations

我希望默认消息出现在那里,但他们没有。我是期望过高还是做错了什么?

【问题讨论】:

    标签: python flask flask-wtforms python-babel


    【解决方案1】:

    Flask 只能在一个文件夹上搜索翻译(默认情况下translations 而不是鸡蛋)。因此,您需要将 wtforms.mo/wtforms.po 文件复制粘贴到您的应用程序 LS_MESSAGES

    【讨论】:

    • 有帮助,但我仍然无法使其工作。我已经编译到messages.mo和wtforms.mo,它不起作用。
    • 我使用下一个命令PATH_TO_PYTHON_ENV/bin/pybabel compile -f -d PATH_TO_FLASK_PROJECT/translations/,它对我来说很好。什么babelflask babel 版本以及您使用什么WTForm 类?
    • 我用的是virtualenv,所以我有pip提供的最新版本。
    • 将 wtforms.po 的内容复制到你的 messages.po 中,然后翻译它们
    猜你喜欢
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 2022-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    相关资源
    最近更新 更多