2012-03-11 20 views
2

私のウェブサイトは英語とフランス語の両方で翻訳しています。 config/localesディレクトリにロケールファイルがたくさんあり、サブフォルダにまとめられています。Railsのロケールファイルはロードされません

私のファイルのすべてが正しく読み込まれていますが、私はなぜそれがわかりません。ここで

は私のファイルの内容です:私のカテゴリーコントローラのインデックスビューで

fr: 
    categories: 
    index: 
     page_title: "Toutes les catégories" 
     page_description: "Liste de toutes les catégories de tutoriels." 

、私は次の呼び出しがあります。

%h1= t('.page_title') 

をそして私は

翻訳を得続けます見つからない:fr.categories.index.page_title

この問題についてご意見はありますか?


これで問題が見つかりました。

fr: 
    categories: "Catégories" 

このキーは、サブ鍵が見つからなかった理由です私の他のファイルの1と衝突した

は、私は別のファイルに次があります。

+0

フルパス別名「categories.index.page_title」を試しましたか? – Reactormonk

+0

はい、同じ結果です。 – OyoKooN

答えて

0

これはサブフォルダ内のあなたの組織によるものだと思います。誰もがすべてをロードしようとした場合、私は私のapplication.rb # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.あなたはそれが/ * / .rbのロケールに再帰的に見えるというサブフォルダを使用を停止、またはそうconfig.i18n.load_pathを変更するか必要

、YML

+0

それは私がやったことです。これ以外のサブフォルダ内のすべてのファイルがロードされます。それが私が理解できない理由です。 – OyoKooN

+0

うーん、奇妙。あなたは以来、サーバーをリニューアルしましたか?ファイル名は単純な名前ですか(空白、アクセント記号などはありません)?私は知っている、ダムの質問。しかし、それは私が今思うことのすべてです。 – ksol

+0

はい、サーバーは複数回に再起動しました。私は複数のマシンで同じ結果を試しました。ファイル名はfr.ymlと同じくらい単純でパスはconfig/locale/controllers/categories/fr.ymlです – OyoKooN

0

で見ますlocaleサブフォルダ内のファイル、あなただけのapplication.rbに次の行を追加することができます。

config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**/*.{rb,yml}').to_s] 

はRailsの5.0.2に私のためにうまくいきました。

関連する問題