jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir),extensions=['jinja2.ext.i18n'], autoescape = True)
jinja_env.install_gettext_translations(i18n)
config['webapp2_extras.i18n'] = {
'translations_path': 'locale',
'template_path': 'views'
}
app = webapp2.WSGIApplication([
('/', MainController.MainPageHandler)
], config=config, debug=True)
messages.poファイル内。
"Project-Id-Version:PROJECT VERSION \ n" "Report-Msgid-Bugs-To:EMAIL @ ADDRESS \ n" "POT-Creation-Date:2013-01-19 19:26 + 0800 \ n" "PO-改訂日:2013-01-19 19:13 + 0800 \ n ""最終翻訳者:フルネーム\ n ""言語チーム:en_US \ n ""複数形式:nplurals = 2;複数=(n! = 1)\ n "" MIME-Version:1.0 \ n "" Content-Type:text / plain; charset = utf-8 \ n "" Content-Transfer-Encoding:8bit \ n "" Generated-By:Babel 0.9 .6 \ n "
#〜msgid "Hello-World"
#〜msgstr "Hello World"
ハンドラー内:
from webapp2_extras import i18n
from webapp2_extras.i18n import gettext as _
class MainPageHandler(Handler.Handler):
def get(self):
locale = self.request.GET.get('locale', 'en_US')
i18n.get_i18n().set_locale(locale)
logging.info(locale)
message = _('Hello-World')
logging.info(message)
self.render("main.html")
htmlファイル:
<div id="main">
{{ _("Hello-World") }}
</div>
Webページに移動すると、「HelloWorld」ではなく「Hello-World」という文字列が返されます。何が悪いのかわかりません。誰でも助けることができますか?