method

add_route

Importance_0
v7.1.3.4 - Show latest stable - 0 notes - Class: Resources
add_route(action, controller, options, _path, to, via, formatted, anchor, options_constraints) private

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File actionpack/lib/action_dispatch/routing/mapper.rb, line 1972
          def add_route(action, controller, options, _path, to, via, formatted, anchor, options_constraints)
            path = path_for_action(action, _path)
            raise ArgumentError, "path is required" if path.blank?

            action = action.to_s

            default_action = options.delete(:action) || @scope[:action]

            if /^[\w\-\/]+$/.match?(action)
              default_action ||= action.tr("-", "_") unless action.include?("/")
            else
              action = nil
            end

            as = if !options.fetch(:as, true) # if it's set to nil or false
              options.delete(:as)
            else
              name_for_action(options.delete(:as), action)
            end

            path = Mapping.normalize_path URI::DEFAULT_PARSER.escape(path), formatted
            ast = Journey::Parser.parse path

            mapping = Mapping.build(@scope, @set, ast, controller, default_action, to, via, formatted, options_constraints, anchor, options)
            @set.add_route(mapping, as)
          end
Register or log in to add new notes.