module Roda::RodaPlugins::RenderEach::InstanceMethods
Constants
- EMPTY_STRING
Public Instance Methods
render_each(enum, template, opts={})
click to toggle source
For each value in enum, render the given template using the given opts. The template and options hash are passed to render
. Additional options supported:
- :local
-
The local variable to use for the current enum value inside the template. An explicit
nil
value does not set a local variable. If not set, uses the template name.
# File lib/roda/plugins/render_each.rb, line 35 def render_each(enum, template, opts={}) if as = opts.has_key?(:local) as = opts[:local] else as = template.to_s.to_sym end if as opts = opts.dup if locals = opts[:locals] locals = opts[:locals] = locals.dup else locals = opts[:locals] = {} end end enum.map do |v| locals[as] = v if as render(template, opts) end.join end