在配置文件中使用 I18n 是否可以接受(好的做法?)?

Is it acceptable (good practice?) to use I18n within config files?

所以我在 initializers/devise.rb 文件中设置 config.mailer_sender

客户还不知道他们的 'from' 地址是什么,所以我想我会把它添加为一个语言环境,以防我在网站的其他区域也需要它。但是,它没有用。

经过大量搜索后,我找到了一个建议将以下内容放在 application.rb 中的修复程序:

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

关于在配置文件中使用国际化的内容很少,所以我现在很想知道是否有这样做的原因,即不推荐这样做!

是否有更好的解决方案,或者配置文件应该更多detailed/explicit?

谢谢!

在 rails 4.2 中,您实际上可以为不同的设置创建配置文件:

# config/global.yml

development:
  email: "user@example.com"

然后在您的应用中:

Rails.application.config_for(:global)["email"]

您可以在此处找到更多信息:

http://www.justinweiss.com/blog/2014/08/25/the-lesser-known-features-in-rails-4-dot-2/