From 3cd4c7c0ffc3e00004a238304e903a140fcbcd67 Mon Sep 17 00:00:00 2001 From: Ryuta Kamizono Date: Tue, 10 Jan 2017 05:00:53 +0900 Subject: Suppress deprecation message to `has_and_belongs_to_many` only once Passing a class to `has_and_belongs_to_many` show deprecation message three times. It is enough only once. --- activerecord/lib/active_record/associations.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'activerecord') diff --git a/activerecord/lib/active_record/associations.rb b/activerecord/lib/active_record/associations.rb index f3e2189bcb..4606c91ffd 100644 --- a/activerecord/lib/active_record/associations.rb +++ b/activerecord/lib/active_record/associations.rb @@ -1827,7 +1827,7 @@ module ActiveRecord builder = Builder::HasAndBelongsToMany.new name, self, options - join_model = builder.through_model + join_model = ActiveSupport::Deprecation.silence { builder.through_model } const_set join_model.name, join_model private_constant join_model.name @@ -1856,7 +1856,7 @@ module ActiveRecord hm_options[k] = options[k] if options.key? k end - has_many name, scope, hm_options, &extension + ActiveSupport::Deprecation.silence { has_many name, scope, hm_options, &extension } _reflections[name.to_s].parent_reflection = habtm_reflection end end -- cgit v1.2.3