diff options
author | Jeremy Kemper <jeremy@bitsweat.net> | 2007-11-28 20:12:49 +0000 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2007-11-28 20:12:49 +0000 |
commit | a33007d31a539ef5365ee13455f386c4e0b658fe (patch) | |
tree | 5da5437d968fd729f764e983e4467aa7e9a148ff /activerecord/lib/active_record | |
parent | f1d6a0e4d25ad67fead3ed215495adcf08332c80 (diff) | |
download | rails-a33007d31a539ef5365ee13455f386c4e0b658fe.tar.gz rails-a33007d31a539ef5365ee13455f386c4e0b658fe.tar.bz2 rails-a33007d31a539ef5365ee13455f386c4e0b658fe.zip |
attr_readonly uses a set of strings instead of an array of symbols internally. References #10300.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8230 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/lib/active_record')
-rwxr-xr-x | activerecord/lib/active_record/base.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index 991d8b040c..eea83ecbbf 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -672,7 +672,7 @@ module ActiveRecord #:nodoc: # Attributes listed as readonly can be set for a new record, but will be ignored in database updates afterwards. def attr_readonly(*attributes) - write_inheritable_array("attr_readonly", attributes - (readonly_attributes || [])) + write_inheritable_attribute("attr_readonly", Set.new(attributes.map(&:to_s)) + (readonly_attributes || [])) end # Returns an array of all the attributes that have been specified as readonly. @@ -2103,7 +2103,7 @@ module ActiveRecord #:nodoc: # Removes attributes which have been marked as readonly. def remove_readonly_attributes(attributes) unless self.class.readonly_attributes.nil? - attributes.delete_if { |key, value| self.class.readonly_attributes.include?(key.gsub(/\(.+/,"").intern) } + attributes.delete_if { |key, value| self.class.readonly_attributes.include?(key.gsub(/\(.+/,"")) } else attributes end |