2016-06-28 5 views
1

私はpython 2.7.6フラスコを使用して開発されたWebアプリケーションをApache Ubuntuサーバーにデプロイしました。国際化(i18n)はUbuntuインスタンスでmod_wsgiを使用してフラスコベベルとApacheを使用してレンダリングされていません

国際化の場合、アプリはflask-babelパッケージを使用してタイ語に翻訳します。しかし、私のtranslations/th/LC_messages/messages.poファイルは無視されているようです。

これはローカルホストでは正常に動作しますが、サーバでは動作しません。私の設定ファイルに欠落している可能性があり、何かがあるようだが、それを把握することができませんでした

@babel.localeselector 
def get_locale(): 
    return 'th' 

:ロケールの選択を強制するために、私は以下のコードを使用します。

お気軽にご意見をお寄せください。ありがとうございました。

答えて

0

この全く同じ問題が発生しました。私がローカルでアプリケーションを実行したとき、私のバベルの翻訳は正常に動作していましたが、私のApacheサーバーでは、テキストのどれもが期待どおりに翻訳されていませんでした。

さまざまな修正を試した結果、何らかの理由で私のカスタムget_locale localeselectorオーバーライド機能が、アプリケーションによって使用されていないことがわかりました。

get_locale関数を関連するビューファイルに明示的にインポートすると、問題が解決しました。

+0

@CaptainPlanetのご提案ありがとうございます! –

関連する問題