class method self.new

Ruby on Rails 7.1.6

Since v5.2.8.1

Available in: v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Signature

self.new(controller, env, defaults)

Initializes a new Renderer.

Parameters

  • controller - The controller class to instantiate for rendering.

  • env - The Rack env to use for mocking a request when rendering. Entries can be typical Rack env keys and values, or they can be any of the following, which will be converted appropriately:

    • :http_host - The HTTP host for the incoming request. Converts to Rack’s HTTP_HOST.

    • :https - Boolean indicating whether the incoming request uses HTTPS. Converts to Rack’s HTTPS.

    • :method - The HTTP method for the incoming request, case-insensitive. Converts to Rack’s REQUEST_METHOD.

    • :script_name - The portion of the incoming request’s URL path that corresponds to the application. Converts to Rack’s SCRIPT_NAME.

    • :input - The input stream. Converts to Rack’s rack.input.

  • defaults - Default values for the Rack env. Entries are specified in the same format as env. env will be merged on top of these values. defaults will be retained when calling #new on a renderer instance.

If no http_host is specified, the env HTTP host will be derived from the routes’ default_url_options. In this case, the https boolean and the script_name will also be derived from default_url_options if they were not specified. Additionally, the https boolean will fall back to Rails.application.config.force_ssl if default_url_options does not specify a protocol.

Parameters

controller req
env req
defaults req
Source
# File actionpack/lib/action_controller/renderer.rb, line 106
    def initialize(controller, env, defaults)
      @controller = controller
      @defaults = defaults
      if env.blank? && @defaults == DEFAULTS
        @env = DEFAULT_ENV
      else
        @env = normalize_env(@defaults)
        @env.merge!(normalize_env(env)) unless env.blank?
      end
    end

Defined in actionpack/lib/action_controller/renderer.rb line 106 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActionController::Renderer

Type at least 2 characters to search.

↑↓ navigate · open · esc close