Skip to content
Browse files

Merge pull request #5702 from oscardelben/patch-4

Call undefine_attribute_methods only when defining new attributes
  • Loading branch information...
2 parents da97cf0 + 42d0b1c commit cae1ca7d1be9c79c7ef012a1f62aef9d3bb815f8 @drogus drogus committed
Showing with 1 addition and 3 deletions.
  1. +1 −3 activemodel/lib/active_model/attribute_methods.rb
View
4 activemodel/lib/active_model/attribute_methods.rb
@@ -102,7 +102,6 @@ module ClassMethods
# 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 @@ def attribute_method_prefix(*prefixes)
# 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 @@ def attribute_method_suffix(*suffixes)
# 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 @@ def alias_attribute(new_name, old_name)
# end
# end
def define_attribute_methods(*attr_names)
+ undefine_attribute_methods
attr_names.flatten.each { |attr_name| define_attribute_method(attr_name) }
end

0 comments on commit cae1ca7

Please sign in to comment.
Something went wrong with that request. Please try again.