77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
# File 'lib/super_list.rb', line 77
def super_list(column, data, options={})
original_column = "original_#{column}".to_sym
data = SuperList[data]
options = data.options.merge(options)
unless options[:no_validation]
validates_inclusion_of original_column, { :in => data.keys }.merge(options)
end
define_method "#{column}" do |*opt|
opt = opt[0].is_a?(Hash) ? opt[0] : {}
opt = options.merge(opt)
data.get_value(attributes[column.to_s], opt)
end
define_method original_column do
attributes[column.to_s]
end
end
|