The capture_erb plugin allows you to capture the content of a block in an ERB template, and return it as a value, instead of injecting the template block into the template output.
<% value = capture_erb do %> Some content here. <% end %>
capture_erb
can be used inside other methods that are called inside templates. It can be combined with the inject_erb plugin to wrap template blocks with arbitrary output and then inject the wrapped output into the template.
If the output buffer object responds to capture
(e.g. when erubi/capture_block
is being used as the template engine), this will call capture
on the output buffer object, instead of setting the output buffer object temporarily to a new object.
Classes and Modules
Public Class methods
load_dependencies(app)
[show source]
# File lib/roda/plugins/capture_erb.rb 24 def self.load_dependencies(app) 25 app.plugin :render 26 end