关于rails国际化,我有一个相当具体的设置。我正在使用rails-i18n gem,但这不重要。它非常适合Rails 3。
config.i18n.default_locale = :en
config.i18n.locale = :hr让我解释一下:
:hr (克罗地亚语),因为我主要使用克罗地亚语言进行本地化应用。:en,因为我经常使用像rails-admin这样的包含英语翻译的宝石。它在制作过程中发挥得很好,缺少(克罗地亚语)的翻译回到了英语。没关系,所有管理员都懂英语:)问题是:如何使它与Rails 4一起工作?
Rails 4似乎忽略了config.i18n.locale,而且它总是使用:en语言环境。
到目前为止,我一直在使用before_action设置I18n.locale = :hr,但这在Rails控制台或Rack中间件中不起作用.
提前谢谢你,
丹尼耶尔
发布于 2015-05-06 13:01:00
我找到了一个简单的解决方案,我把它发到这里.
插入config/application.rb
config.i18n.default_locale = :hr
config.i18n.available_locales = [:hr, :en]
config.i18n.fallbacks = [:en]从config/environments/production.rb中删除或注释以下行
# config.i18n.fallbacks = true或改为:
config.i18n.fallbacks = [:en]发布于 2014-02-20 11:13:15
您可以添加以下代码:
class ApplicationController
...
before_filter :set_locale
...
private
def set_locale
I18n.locale = :hr
end
end https://stackoverflow.com/questions/21905772
复制相似问题