diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2018-10-22 02:09:51 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-22 02:09:51 +0900 |
commit | 5a6200a5ad7cda067fd45bf3394569d8dd32924f (patch) | |
tree | 4af949d4f1c09d9944d25770cf38c7c7f2214b3f /activerecord/lib | |
parent | 26a202a91b5a4754be5e3e137c390786ec977e56 (diff) | |
parent | ffc9ed3d3b59dd76cfe3fc1ff6913bd1d2aaf462 (diff) | |
download | rails-5a6200a5ad7cda067fd45bf3394569d8dd32924f.tar.gz rails-5a6200a5ad7cda067fd45bf3394569d8dd32924f.tar.bz2 rails-5a6200a5ad7cda067fd45bf3394569d8dd32924f.zip |
Merge pull request #34270 from eugeneius/read_write_attribute_allocations
Reduce string allocations in read/write_attribute
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/attribute_methods/read.rb | 7 | ||||
-rw-r--r-- | activerecord/lib/active_record/attribute_methods/write.rb | 7 |
2 files changed, 6 insertions, 8 deletions
diff --git a/activerecord/lib/active_record/attribute_methods/read.rb b/activerecord/lib/active_record/attribute_methods/read.rb index ff0e863529..6e1275e990 100644 --- a/activerecord/lib/active_record/attribute_methods/read.rb +++ b/activerecord/lib/active_record/attribute_methods/read.rb @@ -29,10 +29,9 @@ module ActiveRecord # it has been typecast (for example, "2004-12-12" in a date column is cast # to a date object, like Date.new(2004, 12, 12)). def read_attribute(attr_name, &block) - name = if self.class.attribute_alias?(attr_name) - self.class.attribute_alias(attr_name).to_s - else - attr_name.to_s + name = attr_name.to_s + if self.class.attribute_alias?(name) + name = self.class.attribute_alias(name) end primary_key = self.class.primary_key diff --git a/activerecord/lib/active_record/attribute_methods/write.rb b/activerecord/lib/active_record/attribute_methods/write.rb index 7f246eed46..455e67e19b 100644 --- a/activerecord/lib/active_record/attribute_methods/write.rb +++ b/activerecord/lib/active_record/attribute_methods/write.rb @@ -33,10 +33,9 @@ module ActiveRecord # specified +value+. Empty strings for Integer and Float columns are # turned into +nil+. def write_attribute(attr_name, value) - name = if self.class.attribute_alias?(attr_name) - self.class.attribute_alias(attr_name).to_s - else - attr_name.to_s + name = attr_name.to_s + if self.class.attribute_alias?(name) + name = self.class.attribute_alias(name) end primary_key = self.class.primary_key |