12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/mongoid/localization.rb', line 12
def create_accessors(name, meth, options ={})
self.fields.keys.each do |field|
if self.fields[field].options[:localize] == true
define_method("#{field}_translations") {read_attribute(field)}
define_method("#{field}_translations=") do |value|
if value.is_a?(Hash)
start_locale = I18n.locale
value.keys.each do |key|
if I18n.available_locales.include?(key.to_sym)
I18n.locale = key
write_attribute(field, value[key])
end
I18n.locale = start_locale
end
end
end
else
super
end
end
end
|