Merge pull request #103 from joliss/cleanup

Use blocks instead of eval to define methods
This commit is contained in:
José Valim 2012-07-25 23:34:29 -07:00
commit dbde02d647

View File

@ -318,7 +318,9 @@ module ActiveModel
self._attributes = _attributes.merge(attr => options[:key] || attr.to_s.gsub(/\?$/, '').to_sym) self._attributes = _attributes.merge(attr => options[:key] || attr.to_s.gsub(/\?$/, '').to_sym)
unless method_defined?(attr) unless method_defined?(attr)
class_eval "def #{attr}() object.read_attribute_for_serialization(:#{attr}) end", __FILE__, __LINE__ define_method attr do
object.read_attribute_for_serialization(attr.to_sym)
end
end end
end end
@ -328,7 +330,9 @@ module ActiveModel
attrs.each do |attr| attrs.each do |attr|
unless method_defined?(attr) unless method_defined?(attr)
class_eval "def #{attr}() object.#{attr} end", __FILE__, __LINE__ define_method attr do
object.send attr
end
end end
self._associations[attr] = klass.refine(attr, options) self._associations[attr] = klass.refine(attr, options)