estaba tratando de averiguar lo mismo y no encontraron mucho de lo que fue satisfactorio con excepción de usar la Tilt gem, que envuelve ERB y otros sistemas de plantillas y soportes bloques que pasa (aka, los resultados de una separada rinden llamada) que puede ser un poco mejor.
observar en: https://code.tutsplus.com/tutorials/ruby-for-newbies-the-tilt-gem--net-20027
layout.erb
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title><%= title %></title>
</head>
<body>
<%= yield %>
</body>
</html>
Luego, en su llamada rubí
template = Tilt::ERBTemplate.new("layout.erb")
File.open "other_template.html" do |file|
file.write template.render(context) {
Tilt::ERBTemplate.new("other_template.erb").render
}
end
Se aplicará los resultados de la other_template
en el cuerpo yield
.
Posible duplicado de http://stackoverflow.com/a/2467313/772874 Necesitas 'ActionView' para eso. –