aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2014-06-04 11:03:28 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2014-06-04 11:03:28 -0300
commited38c5a4854e32fe9e57975812b45a8bb67a8719 (patch)
treeeb9289a6abbda5031284a6c7c1a8bc9beb7b870c /activerecord/lib/active_record
parent0329d59a65a5afbf57de83670e3e05e4a73815e4 (diff)
parent04919c79d71726aac1732b1d1a305051ceee541b (diff)
downloadrails-ed38c5a4854e32fe9e57975812b45a8bb67a8719.tar.gz
rails-ed38c5a4854e32fe9e57975812b45a8bb67a8719.tar.bz2
rails-ed38c5a4854e32fe9e57975812b45a8bb67a8719.zip
Merge pull request #15463 from geopet/refactor_xml_compute_type
Refactor XML serializer to not depend on `serialized_attributes`
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r--activerecord/lib/active_record/serializers/xml_serializer.rb8
1 files changed, 4 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/serializers/xml_serializer.rb b/activerecord/lib/active_record/serializers/xml_serializer.rb
index 1a766093d0..019fe2218e 100644
--- a/activerecord/lib/active_record/serializers/xml_serializer.rb
+++ b/activerecord/lib/active_record/serializers/xml_serializer.rb
@@ -180,12 +180,12 @@ module ActiveRecord #:nodoc:
class Attribute < ActiveModel::Serializers::Xml::Serializer::Attribute #:nodoc:
def compute_type
klass = @serializable.class
- type = if klass.serialized_attributes.key?(name)
+ column = klass.columns_hash[name] || Type::Value.new
+
+ type = if column.serialized?
super
- elsif klass.columns_hash.key?(name)
- klass.columns_hash[name].type
else
- NilClass
+ column.type
end
{ :text => :string,