From 8f6e5986acddf1c126bebf27774d7c7866bb4fa7 Mon Sep 17 00:00:00 2001 From: Kassio Borges Date: Tue, 13 May 2014 11:25:21 -0300 Subject: Fix how to compute class name on habtm namespaced. Thank's for @laurocaetano for the help with tests. :smiley: Fixes #14709 --- .../active_record/associations/builder/has_and_belongs_to_many.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'activerecord/lib/active_record') diff --git a/activerecord/lib/active_record/associations/builder/has_and_belongs_to_many.rb b/activerecord/lib/active_record/associations/builder/has_and_belongs_to_many.rb index e472277374..ad781e50c9 100644 --- a/activerecord/lib/active_record/associations/builder/has_and_belongs_to_many.rb +++ b/activerecord/lib/active_record/associations/builder/has_and_belongs_to_many.rb @@ -23,7 +23,11 @@ module ActiveRecord::Associations::Builder KnownTable.new options[:join_table].to_s else class_name = options.fetch(:class_name) { - name.to_s.camelize.singularize + model_name = name.to_s.camelize.singularize + if parent_name = lhs_class.parent_name.presence + model_name = model_name.prepend("#{parent_name}::") + end + model_name } KnownClass.new lhs_class, class_name end -- cgit v1.2.3