module Roda::RodaPlugins::RenderLocals

The render_locals plugin allows setting default locals for rendering templates.

plugin :render_locals, render: {heading: 'Hello'}

route do |r|
  r.get "foo" do
    view 'foo', locals: {name: 'Foo'} # locals: {:heading=>'Hello', :name=>'Foo'}
  end

  r.get "bar" do
    view 'foo', locals: {heading: 'Bar'} # locals: {:heading=>'Bar'}
  end

  view "default" # locals: {:heading=>'Hello'}
end

The render_locals plugin accepts the following options:

render

The default locals to use for template rendering

layout

The default locals to use for layout rendering

merge

Whether to merge template locals into layout locals