2016-04-20 50 views
0
加載翻譯

我使用國際化的國際化i18n。但是,發生這個問題一如既往。I18n :: InvalidLocaleData - 無法從

配置/區域設置/查看/ en.yml:期望它返回一個哈希值,但不

雖然,我以正確的意圖(2空間,沒有自來水),
錯誤是發生寫陽明。
我該如何解決問題?

en.yml

en: 
    moderna: 
    language: 
     en: English 
     jp: Japanese 
     kr: Korean 
    menu: 
     company: Company 
     home: Home 
    submenu: 
     company: 
     history: History 
     introduce: Introduce 
     philosophy: Philosophy 
     subsidiary: Subsidiary 
     vision: Vision 

ERB

<%= link_to t("moderna.menu.home"), xx_path %> 
<%= link_to t("moderna.submenu.company.introduce"), introduce_path %> 
<%= link_to t("moderna.submenu.company.history"), history_path %> 
<%= link_to t("moderna.submenu.company.philosophy"), philosophy_path %> 
<%= link_to t("moderna.submenu.company.subsidiary"), subsidiary_path %> 
<%= link_to t("moderna.submenu.company.vision"), vision_path %> 
+1

檢查此答案:http://stackoverflow.com/questions/15331873/error-i18ninvalidlocaledata 也許有一個標籤在你的yml文件,你沒有注意到。 –

回答

0

我找到了原因。當您在項目中使用i18n時

  1. 應該生成具有不同名稱的內部化文件。

    配置/區域設置/默認/ en.yml
    配置/區域設置/默認/ kr.yml
    配置/區域設置/模型/ en.yml
    配置/區域設置/模型/ kr.yml
    引擎/ hoge_engines /配置/區域設置/默認/ en.yml
    引擎/ hoge_engines /配置/區域設置/默認/ kr.yml
    引擎/ hoge_engines /配置/區域設置/ MODLE/en.yml
    引擎/ hoge_engines /配置/區域設置/model/kr.yml

=>也許發生錯誤,我改變的文件名作爲吹塑[無法加載從~~~~~翻譯] 所以

config/locales/default/default_en.yml 
config/locales/default/default_kr.yml 
config/locales/model/model_en.yml 
config/locales/model/model_kr.yml 
engines/hoge_engines/config/locales/default/default_en.yml 
engines/hoge_engines/config/locales/default/default_kr.yml 
engines/hoge_engines/config/locales/modle/model_en.yml 
engines/hoge_engines/config/locales/model/model_kr.yml 
  • 不要使內部化的空文件(yml)。 我製作了空的yml文件供以後使用。它也會導致錯誤發生。