对不起,我是烧瓶宝贝的新手,也是烧瓶! 我的烧瓶代码:
test.py
app = Flask(__name__)
app.config['BABEL_DEFAULT_LOCALE'] = 'en'
babel = Babel(app)
@app.route('/', methods=['GET'])
def hello_world():
message = _(u'测试 页面')
return render_template('index.html', message=message)
的index.html
<h1>{{ _("测试") }}</h1>
<h2>{{ _("消息:%(m)s", m=message) }}</h2>
message.po
#: learnflask.py:23
msgid "测试 页面"
msgstr "test page"
#: templates/index.html:8
msgid "测试"
msgstr "Test"
#: templates/index.html:9
#, python-format
msgid "消息:%(m)s"
msgstr "message: %(m)s"
结果:
测试
消息:测试页面
第一个字符串是正确翻译的,但不是第二个字符串。我想知道如何让它发挥作用。请帮忙。谢谢!
答案 0 :(得分:0)
行。我找到了答案。这几乎就像你应该在更新.po文件时删除.mo文件一样。
我删除了message.mo
,并使用python compile -d translations
生成新的message.mo
,然后就可以了!