def model_name
      @_model_name ||= begin
        namespace = module_parents.detect do |n|
          n.respond_to?(:use_relative_model_naming?) && n.use_relative_model_naming?
        end
        ActiveModel::Name.new(self, namespace)
      end
    end
def model_name
      @_model_name ||= begin
        namespace = module_parents.detect do |n|
          n.respond_to?(:use_relative_model_naming?) && n.use_relative_model_naming?
        end
        ActiveModel::Name.new(self, namespace)
      end
    end
Returns an ActiveModel::Name object for module. It can be
 used to retrieve all kinds of naming-related information
 (See ActiveModel::Name for more information).

   class Person
     extend ActiveModel::Naming
   end

   Person.model_name.name     # => "Person"
   Person.model_name.class    # => ActiveModel::Name
   Person.model_name.singular # => "person"
   Person.model_name.plural   # => "people"