bob*_*sol 5 ruby-on-rails rails-i18n
我尝试了我能想到的每一个组合,但我无法让我的应用程序看到我的引擎提供的本地化内容.现在发动机做得很好.
我看到了同样的问题Rails_admin
.它的i18n文件在一个单独的宝石中.主应用程序似乎无法看到文件.我确定我的指定方式一定有错误I18n.load_path
,但它让我受到打击.
来自Ryan Bates的铁杆演员:
I18n.load_path += Dir[Rails.root.join('config', 'locale', '*.{rb,yml}')]
Run Code Online (Sandbox Code Playgroud)
我的一次黑客尝试:
I18n.load_path += Dir[Rails.root.join('**','locales', '**', '*.{rb,yml}')]
Run Code Online (Sandbox Code Playgroud)
应用程序内部的任何引用都会导致找不到翻译.
任何线索.
Dee*_*bur 14
我遇到了同样的问题,如果你开发的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
Run Code Online (Sandbox Code Playgroud)
其他方式
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
Run Code Online (Sandbox Code Playgroud)