私はフラスコのWebプロジェクトをbabel(Ubuntu 16.04/python 2.7.12を使用)で翻訳しようとしています。テーブルを除いて、すべてうまくいくようです。列の名前は翻訳されません。誰かがそれをどのように働かせるか知っていますか?フラスコのベベル:フラスコテーブルが翻訳されていません
私の.py例:
from flask import Flask, render_template
from flask_script import Manager
from flask.ext.babel import Babel, gettext
from flask_table import Table, Col
app = Flask(__name__)
manager = Manager(app)
babel = Babel(app)
class ItemTable(Table):
col1 = Col(gettext('Apple'))
col2 = Col(gettext('Banana'))
col3 = Col(gettext('Pear'))
class Item(object):
def __init__(self, col1, col2, col3):
self.col1 = col1
self.col2 = col2
self.col3 = col3
@babel.localeselector
def get_locale():
return 'de'
@app.route('/')
def index():
items = []
items.append(Item('bla', 'bla', 'bla'))
table = ItemTable(items)
test = gettext("This is a string.")
return render_template('index.html', test=test, table=table)
if __name__ == '__main__':
app.run(debug=True)
HTMLファイル:
ここ<h1>{{gettext("Hello World!")}}</h1>
<h2>{{test}}</h2>
{{table}}
、私はドイツ語への翻訳が作業を行うかどうかをテストしたいので、単に 'ド' を返しますget_locale translationsフォルダとbabel.cfgが配置され、pybabel extract/init/compileが動作し、変換されたmessages.poファイルに文字列Apple/Banana/Pearが現れます。しかし、ページが読み込まれると "Hello World"と "test"は翻訳されますが、列文字列は変換されません。
どうすればいいですか?