这就是问题所在。在我的应用程序中,如果某个记录上没有翻译,globalize2将返回一个空字符串,而不是回退到default_locale。我想知道如何启用瘦功能?有人知道这一点吗?
发布于 2010-01-29 06:08:16
从http://github.com/svenfuchs/i18n安装sven fuchs的i18n库
然后,在您的environment.rb中:
require "i18n/backend/fallbacks"
I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks)使用:"en-US“作为默认区域设置:
I18n.default_locale = :"en-US"
I18n.fallbacks[:ca] # => [:ca, :"en-US", :en]
I18n.fallbacks :dk => [:"se-FI", :"fi-FI"] # => [:dk, :"se-FI", :se, :"fi-FI", :fi, :"en-US", :en]发布于 2015-02-07 02:46:52
在最新的i18n gem (0.7.0)中,我发现有必要像这样(在config/application.rb中)定义备用语言环境:
# Custom I18n fallbacks
config.after_initialize do
I18n.fallbacks = I18n::Locale::Fallbacks.new(at: :"de-DE", ch: :"de-DE", gb: :"en-US")
end您还需要在所有config/environments/*.rb文件中设置config.i18n.fallbacks = true。
发布于 2010-08-16 09:59:20
这对我是有效的(i18n gem 0.4x版不起作用)。
# config/environment.rb
config.gem 'i18n', :version => '0.3.7'
# config/initializers/i18n.rb
I18n::Backend::Simple.send(:include, I18n::Backend::Fallbacks)https://stackoverflow.com/questions/2147179
复制相似问题