Class ActionController::Routing::Optimisation::PositionalArgumentsWithAdditionalParams
In: actionpack/lib/action_controller/routing_optimisation.rb
Parent: PositionalArguments

This case is mostly the same as the positional arguments case above, but it supports additional query parameters as the last argument

Methods

Public Instance methods

To avoid generating localhost/?host=foo.example.com we can’t use this optimisation on routes without any segments

[Source]

# File actionpack/lib/action_controller/routing_optimisation.rb, line 111
        def applicable?
          super && route.segment_keys.size > 0 
        end

This case uses almost the Use the same code as positional arguments, but add an args.last.to_query on the end

[Source]

# File actionpack/lib/action_controller/routing_optimisation.rb, line 105
        def generation_code
          super.insert(-2, '?#{args.last.to_query}')
        end

[Source]

# File actionpack/lib/action_controller/routing_optimisation.rb, line 99
        def guard_condition
          "defined?(request) && request && args.size == #{route.segment_keys.size + 1}"
        end

[Validate]