From 410e887a446e82399cca535bc0a9f12647d7dbf3 Mon Sep 17 00:00:00 2001 From: Nikita Afanasenko Date: Sat, 10 Nov 2012 01:45:43 +0400 Subject: Keep the code related to serialization in Serialization module. We should not need any `serialized_attributes` checks outside `ActiveRecord::AttributeMethods::Serialization` module. --- .../lib/active_record/attribute_methods/serialization.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'activerecord/lib/active_record/attribute_methods') diff --git a/activerecord/lib/active_record/attribute_methods/serialization.rb b/activerecord/lib/active_record/attribute_methods/serialization.rb index 5b9ed81424..47d4a938af 100644 --- a/activerecord/lib/active_record/attribute_methods/serialization.rb +++ b/activerecord/lib/active_record/attribute_methods/serialization.rb @@ -5,7 +5,7 @@ module ActiveRecord included do # Returns a hash of all the attributes that have been specified for - # serialization as keys and their class restriction as values. + # serialization as keys and their class restriction as values. class_attribute :serialized_attributes, instance_accessor: false self.serialized_attributes = {} end @@ -129,6 +129,14 @@ module ActiveRecord end end end + + def typecasted_attribute_value(name) + if self.class.serialized_attributes.include?(name) + @attributes[name].serialized_value + else + super + end + end end end end -- cgit v1.2.3