From 78f5874c82ed50d405cbe1ae9a9e75b7b2ae8ef5 Mon Sep 17 00:00:00 2001 From: Anthony Date: Fri, 27 Jul 2012 15:13:05 -0400 Subject: Following the false issue reporting I did here : https://github.com/rails/rails/issues/6958 - Enable propagation of :skip_types, :dasherize and :camelize on included models by default - Adding the option to override this propagation on a per-include basis (:include => { :model => { :dasherize => false } } - Enough tests to prove it works - Updated activemodel CHANGELOG.md Squashed my commits --- activemodel/lib/active_model/serializers/xml.rb | 4 ++++ 1 file changed, 4 insertions(+) mode change 100644 => 100755 activemodel/lib/active_model/serializers/xml.rb (limited to 'activemodel/lib') diff --git a/activemodel/lib/active_model/serializers/xml.rb b/activemodel/lib/active_model/serializers/xml.rb old mode 100644 new mode 100755 index 016d821fdf..cf742d0569 --- a/activemodel/lib/active_model/serializers/xml.rb +++ b/activemodel/lib/active_model/serializers/xml.rb @@ -115,6 +115,10 @@ module ActiveModel merged_options = opts.merge(options.slice(:builder, :indent)) merged_options[:skip_instruct] = true + [:skip_types, :dasherize, :camelize].each do |key| + merged_options[key] = options[key] if merged_options[key].nil? && !options[key].nil? + end + if records.respond_to?(:to_ary) records = records.to_ary -- cgit v1.2.3