Rails I18n属性回退到默认语言环境

时间:2015-03-04 04:18:18

标签: ruby-on-rails internationalization

我们在我们的应用程序中使用I18n gem进行翻译。

对于翻译,预计会回退到default_locale,即:en,如果翻译在相应的语言环境中不可用。

Class Article
  ...
  translates :title
  ...
end

以法国用户身份访问时,

article.title => title in english 

but 

article.attributes(:title) => nil

我猜属性直接从active_record对象(法语翻译)中选择,因为它不可用,所以它返回nil。如果在相应的语言环境中没有翻译,是否有办法使属性回退到默认语言环境。

1 个答案:

答案 0 :(得分:1)

你可以使用I18n.fallbacks:

I18n.default_locale = :"en-US" 
I18n.fallbacks[:fr] # => [:fr, :"en-US", :en]

了解如何在I18n Wiki

上使用Fallbacks