render
 
 - 1.0.0
- 1.1.6
- 1.2.6
- 2.0.3
- 2.1.0
- 2.2.1
- 2.3.8
- 3.0.0 (0)
- 3.0.9 (0)
- 3.1.0 (0)
- 3.2.1 (0)
- 3.2.8 (0)
- 3.2.13 (0)
- 4.0.2 (0)
- 4.1.8 (0)
- 4.2.1 (0)
- 4.2.7 (0)
- 4.2.9 (0)
- 5.0.0.1 (0)
- 5.1.7 (0)
- 5.2.3 (0)
- 6.0.0 (0)
- 6.1.3.1 (0)
- 6.1.7.7 (0)
- 7.0.0 (0)
- 7.1.3.2 (38)
- 7.1.3.4 (0)
- What's this?
render(*args) public Renders a template and assigns the result to self.response_body.
If no rendering mode option is specified, the template will be derived from the first argument.
render "posts/show" # => renders app/views/posts/show.html.erb # In a PostsController action... render :show # => renders app/views/posts/show.html.erb
If the first argument responds to render_in, the template will be rendered by calling render_in with the current view context.
Rendering Mode
- :partial
-  See ActionView::PartialRenderer for details. render partial: "posts/form", locals: { post: Post.new } # => renders app/views/posts/_form.html.erb 
- :file
-  Renders the contents of a file. This option should not be used with unsanitized user input. render file: "/path/to/some/file" # => renders /path/to/some/file 
- :inline
-  Renders an ERB template string. @name = "World" render inline: "<h1>Hello, <%= @name %>!</h1>" # => renders "<h1>Hello, World!</h1>" 
- :body
-  Renders the provided text, and sets the content type as text/plain. render body: "Hello, World!" # => renders "Hello, World!" 
- :plain
-  Renders the provided text, and sets the content type as text/plain. render plain: "Hello, World!" # => renders "Hello, World!" 
- :html
-  Renders the provided HTML string, and sets the content type as text/html. If the string is not html_safe?, performs HTML escaping on the string before rendering. render html: "<h1>Hello, World!</h1>".html_safe # => renders "<h1>Hello, World!</h1>" render html: "<h1>Hello, World!</h1>" # => renders "<h1>Hello, World!</h1>" 
- :json
-  Renders the provided object as JSON, and sets the content type as application/json. If the object is not a string, it will be converted to JSON by calling to_json. render json: { hello: "world" } # => renders "{\"hello\":\"world\"}" 
By default, when a rendering mode is specified, no layout template is rendered.
Options
- :assigns
-  Hash of instance variable assignments for the template. render inline: "<h1>Hello, <%= @name %>!</h1>", assigns: { name: "World" } # => renders "<h1>Hello, World!</h1>" 
- :locals
-  Hash of local variable assignments for the template. render inline: "<h1>Hello, <%= name %>!</h1>", locals: { name: "World" } # => renders "<h1>Hello, World!</h1>" 
- :layout
-  The layout template to render. Can also be false or true to disable or (re)enable the default layout template. render "posts/show", layout: "holiday" # => renders app/views/posts/show.html.erb with the app/views/layouts/holiday.html.erb layout render "posts/show", layout: false # => renders app/views/posts/show.html.erb with no layout render inline: "<h1>Hello, World!</h1>", layout: true # => renders "<h1>Hello, World!</h1>" with the default layout 
- :status
-  The HTTP status code to send with the response. Can be specified as a number or as the status name in Symbol form. Defaults to 200. render "posts/new", status: 422 # => renders app/views/posts/new.html.erb with HTTP status code 422 render "posts/new", status: :unprocessable_entity # => renders app/views/posts/new.html.erb with HTTP status code 422 

 RSpec
RSpec Ruby on Rails
Ruby on Rails Ruby
Ruby 
  
  
  
  = protected
 = protected 