Sha256: 2dc76c55f650aae586000630364ccab90aefe2191b42910fa47e4aaa368d0787

Contents?: true

Size: 1.46 KB

Versions: 1

Compression:

Stored size: 1.46 KB

Contents

module Myreplicator
  class Engine < ::Rails::Engine
    # isolate_namespace Myreplicator

    define_method(:isolate_namespace) do |mod|
      puts "NOT Defined"
      engine_name(ActiveSupport::Inflector.underscore(mod).gsub("/", "_"))
      
      self.routes.default_scope = { :module => ActiveSupport::Inflector.underscore(mod.name) }
      self.isolated = true
      
      unless mod.respond_to?(:railtie_namespace)
        name, railtie = engine_name, self
        
        mod.singleton_class.instance_eval do
          define_method(:railtie_namespace) { railtie }
          
          unless mod.respond_to?(:table_name_prefix)
            define_method(:table_name_prefix) { "#{name}_" }
          end
          
          unless mod.respond_to?(:use_relative_model_naming?)
            class_eval "def use_relative_model_naming?; true; end", __FILE__, __LINE__
          end
          
          unless mod.respond_to?(:railtie_helpers_paths)
            define_method(:railtie_helpers_paths) { railtie.helpers_paths }
          end
          
          unless mod.respond_to?(:railtie_routes_url_helpers)
            define_method(:railtie_routes_url_helpers) { railtie.routes_url_helpers }
          end
        end
      end
    end unless method_defined? :isolate_namespace
    
    # if Rails::Engine.method_defined?(:isolate_namespace)
    #   puts "Defined"
    #   isolate_namespace Myreplicator
    # else
      
    # end

    isolate_namespace Myreplicator
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
myreplicator-0.0.9 lib/myreplicator/engine.rb