I18n::InvalidLocaleData - 无法从中加载翻译

I18n::InvalidLocaleData - can not load translations from

我使用 i18n 进行国际化。 但是,一击就出现了问题。

config/locales/view/en.yml:期望它是 return 一个散列,但不是

虽然,我写 yml 的意图是正确的(2 space,没有点击),
发生错误。
我该如何解决这个问题?

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 %>

我找到了原因。当你在项目中使用 i18n 时

  1. 应该是生成不同名称的内化文件。

    config/locales/default/en.yml
    config/locales/default/kr.yml
    config/locales/model/en.yml
    config/locales/model/kr.yml
    引擎/hoge_engines/config/locales/default/en.yml
    引擎/hoge_engines/config/locales/default/kr.yml
    engines/hoge_engines/config/locales/modle/en.yml
    引擎/hoge_engines/config/locales/model/kr.yml

=> 可能会发生错误。[无法从 ~~~~~ 加载翻译] 所以,我将文件名更改为 blow

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  
  1. 不要为内部化 (yml) 创建空文件。 我制作了空的 yml 文件以备后用。它还会导致引发错误。