def content_for(block_name, &capture)
      raise ArgumentError, "content_for works only with ERB Templates" if !self.template.template.kind_of?(Tilt::ERBTemplate)
      eval "@_erbout_tmp = _erbout", capture.binding
      eval "_erbout = \"\"", capture.binding
      t = Tilt::ERBTemplate.new(){ "<%= yield %>" }
      @_content_for_blocks[block_name] = t.render(&capture)
      return nil
    ensure
      eval "_erbout = @_erbout_tmp", capture.binding
    end
def content_for(block_name, &capture)
      raise ArgumentError, "content_for works only with ERB Templates" if !self.template.template.kind_of?(Tilt::ERBTemplate)
      eval "@_erbout_tmp = _erbout", capture.binding
      eval "_erbout = \"\"", capture.binding
      t = Tilt::ERBTemplate.new(){ "<%= yield %>" }
      @_content_for_blocks[block_name] = t.render(&capture)
      return nil
    ensure
      eval "_erbout = @_erbout_tmp", capture.binding
    end
Capture content in blocks in the template for later use in the layout.
 Currently only works in ERB templates. Use like this in the template:

 ```
   <% content_for :name %> bla bla <% end %>
 ```

 Place it like this in the layout:

 ```
   <%= yield :name %>
 ```