diff --git a/elasticsearch-model/lib/elasticsearch/model/naming.rb b/elasticsearch-model/lib/elasticsearch/model/naming.rb index ce510d2d4..77e07df3c 100644 --- a/elasticsearch-model/lib/elasticsearch/model/naming.rb +++ b/elasticsearch-model/lib/elasticsearch/model/naming.rb @@ -34,7 +34,7 @@ def index_name name=nil, &block if @index_name.respond_to?(:call) @index_name.call else - @index_name || self.model_name.collection.gsub(/\//, '-') + @index_name || self.base_model_name.collection.gsub(/\//, '-') end end @@ -58,7 +58,7 @@ def index_name=(name) # Article.document_type "my-article" # def document_type name=nil - @document_type = name || @document_type || self.model_name.element + @document_type = name || @document_type || self.base_model_name.element end @@ -69,6 +69,13 @@ def document_type name=nil def document_type=(name) @document_type = name end + + private + + # Get the base class's model_name + def base_model_name + respond_to?(:base_class) ? base_class.model_name : model_name + end end module InstanceMethods