aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
diff options
context:
space:
mode:
authorJoshua Peek <josh@joshpeek.com>2009-07-29 21:59:02 -0500
committerJoshua Peek <josh@joshpeek.com>2009-07-30 17:54:00 -0500
commite129c5673a99a09ae64759dafbe907aade16cf2b (patch)
tree55a893f4b4ba7350e374fc9899a58e3f1d007166 /activerecord/lib/active_record
parent586baf8ffea46f9daa96df7c0258591d89f57aeb (diff)
downloadrails-e129c5673a99a09ae64759dafbe907aade16cf2b.tar.gz
rails-e129c5673a99a09ae64759dafbe907aade16cf2b.tar.bz2
rails-e129c5673a99a09ae64759dafbe907aade16cf2b.zip
Wrap up attribute method reset concerns in 'undefine_attribute_methods'
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r--activerecord/lib/active_record/attribute_methods.rb5
-rwxr-xr-xactiverecord/lib/active_record/base.rb4
2 files changed, 7 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/attribute_methods.rb b/activerecord/lib/active_record/attribute_methods.rb
index ef510a1a2c..8370c212ca 100644
--- a/activerecord/lib/active_record/attribute_methods.rb
+++ b/activerecord/lib/active_record/attribute_methods.rb
@@ -79,6 +79,11 @@ module ActiveRecord
end
end
+ def undefine_attribute_methods
+ generated_methods.each { |name| undef_method(name) }
+ @generated_methods = nil
+ end
+
# Checks whether the method is defined in the model or any of its subclasses
# that also derive from Active Record.
def instance_method_already_implemented?(method_name)
diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb
index b64c76b558..b93dfaf987 100755
--- a/activerecord/lib/active_record/base.rb
+++ b/activerecord/lib/active_record/base.rb
@@ -1397,8 +1397,8 @@ module ActiveRecord #:nodoc:
# end
# end
def reset_column_information
- generated_methods.each { |name| undef_method(name) }
- @column_names = @columns = @columns_hash = @content_columns = @dynamic_methods_hash = @generated_methods = @inheritance_column = nil
+ undefine_attribute_methods
+ @column_names = @columns = @columns_hash = @content_columns = @dynamic_methods_hash = @inheritance_column = nil
end
def reset_column_information_and_inheritable_attributes_for_all_subclasses#:nodoc: