应用无法访问引擎或gem中的翻译文件

我尝试了我能想到的每一个组合,但我无法让我的应用程序看到我的引擎提供的本地化内容。 现在发动机做得很好。

我在Rails_admin看到了同样的问题。 它的i18n文件在一个单独的gem中。 主应用程序似乎无法看到文件。 我确定我如何指定I18n.load_path一定会出错,但它让我I18n.load_path了。

来自Ryan Bates的铁杆演员:

 I18n.load_path += Dir[Rails.root.join('config', 'locale', '*.{rb,yml}')] 

我的一次黑客尝试:

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

应用程序内部的任何引用都会导致找不到翻译。

任何线索。

我遇到了同样的问题,如果你开发的rails引擎然后将以下行添加到lib / engine_name / engine.rb

 module MyEngine class MyEngine < Rails::Engine config.before_initialize do config.i18n.load_path += Dir["#{config.root}/config/locales/**/*.yml"] end end end 

其他方式

 module MyEngine class MyEngine < Rails::Engine initializer 'MyEngine', before: :load_config_initializers do Rails.application.config.i18n.load_path += Dir["#{config.root}/config/locales/**/*.yml"] end end end