diff options
author | Piotr Sarnacki <drogus@gmail.com> | 2012-05-19 23:57:58 -0700 |
---|---|---|
committer | Piotr Sarnacki <drogus@gmail.com> | 2012-05-19 23:57:58 -0700 |
commit | cae1ca7d1be9c79c7ef012a1f62aef9d3bb815f8 (patch) | |
tree | 6b112fe68cf8bb985e506de7de79d82ead1aef7e /activemodel/lib | |
parent | da97cf016a8ffd1f54f804cd881f393e5d6efc18 (diff) | |
parent | 42d0b1c8ddab9c3ffa8951bf085f5c758673e94b (diff) | |
download | rails-cae1ca7d1be9c79c7ef012a1f62aef9d3bb815f8.tar.gz rails-cae1ca7d1be9c79c7ef012a1f62aef9d3bb815f8.tar.bz2 rails-cae1ca7d1be9c79c7ef012a1f62aef9d3bb815f8.zip |
Merge pull request #5702 from oscardelben/patch-4
Call undefine_attribute_methods only when defining new attributes
Diffstat (limited to 'activemodel/lib')
-rw-r--r-- | activemodel/lib/active_model/attribute_methods.rb | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/activemodel/lib/active_model/attribute_methods.rb b/activemodel/lib/active_model/attribute_methods.rb index 99918fdb96..039cd8bdf3 100644 --- a/activemodel/lib/active_model/attribute_methods.rb +++ b/activemodel/lib/active_model/attribute_methods.rb @@ -102,7 +102,6 @@ module ActiveModel # person.name # => nil def attribute_method_prefix(*prefixes) self.attribute_method_matchers += prefixes.map { |prefix| AttributeMethodMatcher.new :prefix => prefix } - undefine_attribute_methods end # Declares a method available for all attributes with the given suffix. @@ -139,7 +138,6 @@ module ActiveModel # person.name_short? # => true def attribute_method_suffix(*suffixes) self.attribute_method_matchers += suffixes.map { |suffix| AttributeMethodMatcher.new :suffix => suffix } - undefine_attribute_methods end # Declares a method available for all attributes with the given prefix @@ -177,7 +175,6 @@ module ActiveModel # person.name # => 'Gemma' def attribute_method_affix(*affixes) self.attribute_method_matchers += affixes.map { |affix| AttributeMethodMatcher.new :prefix => affix[:prefix], :suffix => affix[:suffix] } - undefine_attribute_methods end @@ -225,6 +222,7 @@ module ActiveModel # end # end def define_attribute_methods(*attr_names) + undefine_attribute_methods attr_names.flatten.each { |attr_name| define_attribute_method(attr_name) } end |