module Railroader::RouteHelper
Public Instance Methods
add_resource_routes()
click to toggle source
Add default routes minus :index
# File lib/railroader/processors/lib/route_helper.rb, line 61 def add_resource_routes existing_routes = @tracker.routes[@current_controller] unless existing_routes.is_a? Array and existing_routes.first == :allow_all_actions existing_routes.merge [:new, :create, :show, :edit, :update, :destroy] end end
add_resources_routes()
click to toggle source
Add default routes
# File lib/railroader/processors/lib/route_helper.rb, line 52 def add_resources_routes existing_routes = @tracker.routes[@current_controller] unless existing_routes.is_a? Array and existing_routes.first == :allow_all_actions existing_routes.merge [:index, :new, :create, :show, :edit, :update, :destroy] end end
add_route(route, controller = nil)
click to toggle source
Add route to controller. If a controller is specified, the current controller will be set to that controller. If no controller is specified, uses current controller value.
# File lib/railroader/processors/lib/route_helper.rb, line 27 def add_route route, controller = nil if node_type? route, :str, :lit route = route.value end return unless route.is_a? String or route.is_a? Symbol if route.is_a? String and controller.nil? and route.include? ":controller" controller = ":controller" end route = route.to_sym if controller self.current_controller = controller end routes = @tracker.routes[@current_controller] if routes and not routes.include? :allow_all_actions routes << route end end
current_controller=(name)
click to toggle source
Sets the controller name to a proper class name. For example self.current_controller = :session @controller == :SessionController true
Also prepends the prefix if there is one set.
# File lib/railroader/processors/lib/route_helper.rb, line 19 def current_controller= name @current_controller = (prefix + camelize(name) + "Controller").to_sym @tracker.routes[@current_controller] ||= Set.new end
prefix()
click to toggle source
Manage Controller
prefixes @prefix is an Array, but this method returns a string suitable for prefixing onto a controller name.
# File lib/railroader/processors/lib/route_helper.rb, line 5 def prefix if @prefix.length > 0 @prefix.join("::") << "::" else '' end end