module Production::ClassMethods
Public Instance Methods
const_missing(name)
click to toggle source
Calls superclass method
# File lib/production.rb, line 7 def const_missing(name) namespace = self.name.split('::').tap(&:shift).join('::') # remove 'Production' from requested class namespace "#{namespace}::#{name}".constantize rescue nil # fire autoload if "#{namespace}".constantize.const_defined?(name) case "#{namespace}::#{name}".constantize.class.to_s when 'Module' return Module.new.tap do |m| m.extend(ClassMethods) const_set(name, m) end when 'Class' klass = Class.new("#{namespace}::#{name}".constantize) klass.establish_connection(connection) return klass end end super end