Module: Roda::RodaPlugins::RenderEach
- Defined in:
- lib/roda/plugins/render_each.rb
Overview
The render_each plugin allows you to render a template for each value in an enumerable, returning the concatention of all of the template renderings. For example:
render_each([1,2,3], :foo)
will render the foo template 3 times. Each time the template is rendered, the local variable foo will contain the given value (e.g. on the first rendering foo is 1).
You can pass additional render options via an options hash:
render_each([1,2,3], :foo, views: 'partials')
One additional option supported by is :local, which sets the local variable containing the current value to use. So:
render_each([1,2,3], :foo, local: :bar)
Will render the foo template, but the local variable used inside the template will be bar. You can use local: nil to not set a local variable inside the template. By default, the local variable name is based on the template name, with any directories and file extensions removed.
Defined Under Namespace
Modules: InstanceMethods
Constant Summary collapse
- ALLOWED_KEYS =
[:locals, :local].freeze
Class Method Summary collapse
-
.load_dependencies(app) ⇒ Object
Load the render plugin before this plugin, since this plugin calls the render method.
Class Method Details
.load_dependencies(app) ⇒ Object
Load the render plugin before this plugin, since this plugin calls the render method.
35 36 37 |
# File 'lib/roda/plugins/render_each.rb', line 35 def self.load_dependencies(app) app.plugin :render end |