class Para::Routes

Attributes

router[R]

Public Class Methods

extend_routes_for(component_type, &block) click to toggle source
# File lib/para/routes.rb, line 31
def self.extend_routes_for(component_type, &block)
  extensions = routes_extensions_for(component_type)
  extensions << block
end
new(router) click to toggle source
# File lib/para/routes.rb, line 7
def initialize(router)
  @router = router
end
routes_extensions_for(component_type) click to toggle source
# File lib/para/routes.rb, line 36
def self.routes_extensions_for(component_type)
  self.routes_extensions ||= {}
  self.routes_extensions[component_type] ||= []
end

Public Instance Methods

draw(mount_location = '/', &block) click to toggle source
# File lib/para/routes.rb, line 11
def draw(mount_location = '/', &block)
  router.instance_eval do
    scope mount_location do
      scope module: :para do
        namespace :admin do
          get '/' => 'main#index'
          get '/search' => 'search#index', as: :search
        end

        # Components are namespaced into :admin in their respective methods
        crud_component scoped_in_para: true
        form_component scoped_in_para: true
        component :settings, scoped_in_para: true
      end

      block.call if block
    end
  end
end