新增方法
class ActiveRecord::Base
def self.has_translation(*attributes)
attributes.each do |attribute|
define_method "#{attribute}" do
self.send "#{attribute}_#{I18n.locale.to_s.downcase.sub('-','_')}"
end
end
end
end
Model 中指定字段名
has_translation :name, :title
取数据时根据当前 locale 获取字段内容。
@instance.name # calling @instance.name_en if locale = :en
# @instance.name_jp if locale = :jp