2

Ruby 1.9.2 で実行されている Rails 3.2.3 サイトがあります。翻訳には rails-i18n gem を使用し、国際化設定をオランダ語翻訳に設定しました。

config.i18n.available_locales = :nl
config.i18n.default_locale = :nl

また、翻訳ファイルをロケール マップに追加しましたが、これは必須ではありません。

サイトをローカルで開発モードまたは運用モードで実行すると、エラー メッセージを含め、すべての翻訳が正しく処理されます。ただし、サイトをサーバー (Webfaction でホストされ、nginx を使用) に展開すると、エラー メッセージの翻訳は使用されません。それらは英語で表示されたままです。

サーバーを再起動し、プリコンパイルを行い、サーバー上の github からプルするだけで「デプロイ」しました。

サイトでエラーにオランダ語の翻訳を使用させるために他にすべきことはありますか?

4

2 に答える 2

2

rails-i18n gem には独自の翻訳ファイルが含まれています。本番環境で同じ gemset が使用されていない可能性はありますか?

この場合、解決策はbundle update実稼働サーバー上にあることです。

または、次のいずれかを行うことができます

于 2012-04-30T10:23:34.773 に答える
1

要求に応じて、質問に対する私のコメントから:

ばかげた質問です。ローカルで本番モードで動作させたことがあるとおっしゃっていますが、 config.i18n.available_locales = :nletc はどのファイルに入っていますか? で config\environments\development.rb?にもあり config\environments\production.rbますか?

ある環境では設定されたオプションがあり、別の環境では設定されていないことを忘れがちです。

于 2012-05-01T21:23:35.747 に答える