diff --git a/lib/active_model/serializer.rb b/lib/active_model/serializer.rb index 99cfa66e..0f9405ea 100644 --- a/lib/active_model/serializer.rb +++ b/lib/active_model/serializer.rb @@ -19,14 +19,14 @@ module ActiveModel def embed(type, options={}) CONFIG.embed = type - CONFIG.include = true if options[:include] + CONFIG.side_load = true if options[:side_load] || options[:include] ActiveSupport::Deprecation.warn <<-WARN ** Notice: embed is deprecated. ** The use of .embed method on a Serializer will be soon removed, as this should have a global scope and not a class scope. Please use the global .setup method instead: ActiveModel::Serializer.setup do |config| config.embed = :#{type} - config.include = #{CONFIG.include || false} + config.side_load = #{CONFIG.side_load || false} end WARN end diff --git a/lib/active_model/serializer/associations.rb b/lib/active_model/serializer/associations.rb index b48552ae..5e41d8b1 100644 --- a/lib/active_model/serializer/associations.rb +++ b/lib/active_model/serializer/associations.rb @@ -5,10 +5,16 @@ module ActiveModel class Serializer class Association def initialize(name, options={}) + if options.has_key?(:include) + ActiveSupport::Deprecation.warn <<-WARN +** Notice: include was renamed to side_load. ** + WARN + end + @name = name.to_s @options = options self.embed = options.fetch(:embed) { CONFIG.embed } - @side_load = options.fetch(:include) { CONFIG.include } + @side_load = options.fetch(:side_load) { options.fetch(:include) { CONFIG.side_load } } @embed_key = options[:embed_key] || :id @key = options[:key] @embedded_key = options[:root] || name diff --git a/test/integration/active_record/active_record_test.rb b/test/integration/active_record/active_record_test.rb index 10e9ef45..3d0f8c9c 100644 --- a/test/integration/active_record/active_record_test.rb +++ b/test/integration/active_record/active_record_test.rb @@ -40,7 +40,7 @@ module ActiveModel def test_serialization_embedding_ids_including_in_root post_serializer = ARPostSerializer.new(@post) - embed(ARPostSerializer, embed: :ids, include: true) do + embed(ARPostSerializer, embed: :ids, side_load: true) do assert_equal({ 'ar_post' => { title: 'New post', body: 'A body!!!', @@ -63,7 +63,7 @@ module ActiveModel ARPostSerializer._associations.each_value do |association| association.embed = options[:embed] - association.side_load = options[:include] + association.side_load = options[:side_load] end yield diff --git a/test/unit/active_model/serializer/config_test.rb b/test/unit/active_model/serializer/config_test.rb index 5cecb1e4..2d5f3b9e 100644 --- a/test/unit/active_model/serializer/config_test.rb +++ b/test/unit/active_model/serializer/config_test.rb @@ -65,8 +65,8 @@ module ActiveModel class ApplyConfigTest < ActiveModel::TestCase def test_apply_config_to_associations - CONFIG.embed = :ids - CONFIG.include = true + CONFIG.embed = :ids + CONFIG.side_load = true association = PostSerializer._associations[:comments] old_association = association.dup