Module: ActionController::UrlFor

Extended by:
ActiveSupport::Concern
Includes:
AbstractController::UrlFor
Included in:
Redirecting
Defined in:
actionpack/lib/action_controller/metal/url_for.rb

Instance Method Summary collapse

Methods included from ActiveSupport::Concern

append_features, extended, included

Methods included from AbstractController::UrlFor

#_routes

Methods included from ActionDispatch::Routing::UrlFor

#initialize, #url_for

Methods included from ActionDispatch::Routing::PolymorphicRoutes

#polymorphic_path, #polymorphic_url

Instance Method Details

#url_optionsObject



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'actionpack/lib/action_controller/metal/url_for.rb', line 28

def url_options
  @_url_options ||= super.reverse_merge(
    :host => request.host,
    :port => request.optional_port,
    :protocol => request.protocol,
    :_path_segments => request.symbolized_path_parameters
  ).freeze

  if _routes.equal?(env["action_dispatch.routes"])
    @_url_options.dup.tap do |options|
      options[:script_name] = request.script_name.dup
      options.freeze
    end
  else
    @_url_options
  end
end