0

RailsI18n機能を使用しています。私のロケールは、たとえばen-ZAの名前空間です。

モデルスペックを実行すると、activerecordロケールが取得されます。コントローラの仕様を実行すると、activerecordロケールで取得されます。受け入れ(フルスタック)テストを実行すると、1つのテストを除いて、activerecordロケールでも取得されます。

スイート全体を一度に実行すると(テストに合格したものはすべて失敗し、activerecordロケールが見つからない)、文句を言っている名前空間はすべて小文字です。

ロケールymlファイルの名前空間をen-zaに変更すると(テストは成功します)、en-ZAロケールを探している他の人は失敗します(大文字のビットに注意してください)。

スイート全体を実行すると、小文字または大文字小文字のどちらの名前空間を検索するかが変わるのはどうしてですか?

また、受け入れテストのみを実行すると、失敗したテストが1つだけあり、間違った大文字と小文字でactiverecordロケールにアクセスしようとします...

これは非常に奇妙です。これをどこで変更するか、常にen-ZA(en-zaではなく)を使用するように設定するかはわかりません。

私のデフォルトのロケールはen-ZAに設定されています。

4

2 に答える 2

0

あなたを見てみてくださいconfig/initializers/i18n.rb-いくつかのavailable_localesが大文字になっている可能性がありますか?

于 2012-10-01T18:49:11.363 に答える
0

バグの原因を特定できませんでしたが、簡単な解決策を見つけました。

すべてのロケールで小文字のみを使用してください。

于 2012-10-02T16:02:21.610 に答える