Hola,
En mi aplicación utilizo un layout global
/views/layouts/application.html.erb. Ahora bien, necesito un layout para
un
controller, por ejemplo /layouts/products.html.erb, pero que herede el
layout application, para eso de hacerlo más DRY. Estoy pensando en
utilizar
el plugin [1] Nested Layouts, pero no sé si estoy por el camino
correcto.
Les agradecerÃa me iluminarán.
[1] http://agilewebdevelopment.com/plugins/nested_layouts
Un saludo
Hola,
En mi aplicación utilizo un layout global
/views/layouts/application.html.erb. Ahora bien, necesito un layout para
un
controller, por ejemplo /layouts/products.html.erb, pero que herede el
layout application, para eso de hacerlo más DRY. Estoy pensando en
utilizar
el plugin [1] Nested Layouts, pero no sé si estoy por el camino
correcto.
Les agradecerÃa me iluminarán.
[1] http://agilewebdevelopment.com/plugins/nested_layouts
Un saludo
Hola aprendiz, algo me dice que necesitas varias secciones dinamicas
dentro
de tu layout principal, si ese es el caso, yo lo resuelvo de la
siguiente
manera:
#En el layout principal:
...
<%= yield :sidebar %>
<%= yield %>
#En cualquier vista de tu controlador
<% content_for :sidebar do %>
Aqui el contenido para sidebar
<% end %>
Aqui el contenido principal
Saludos.
2008/7/7 aprendiz basico [email protected]:
El dÃa 8 de julio de 2008 16:45, Ruben. D. [email protected]
escribió:
Hola aprendiz, algo me dice que necesitas varias secciones dinamicas dentro
de tu layout principal, si ese es el caso, yo lo resuelvo de la siguiente
manera:
Hola Ruben,
Basicamente necesito evitar repetir el bloque content_for para las
plantillas (new, edit, etc.) del controlador Products, en este
caso. Gracias.
Un saludo
2008/7/8 Jaime Mora R. [email protected]:
<% content_for(:sidebar) do %>
<%= busqueda %>
<% end %>
<%= render :file => “layouts/application” %>
Hola Jaime,
Muchas gracias, es justamente lo que necesito.
Un saludo.
2008/7/8 aprendiz basico [email protected]:
Basicamente necesito evitar repetir el bloque content_for para las
plantillas (new, edit, etc.) del controlador Products, en este
caso. Gracias.
Hola aprendiz basico,
Para un tÃpico manejo de un sidebar:
#views/layouts/application.html.erb
<%= yield :sidebar %>
#views/layouts/products.html.erb
<% content_for(:sidebar) do %>
<%= busqueda %>
<% end %>
<%= render :file => “layouts/application” %>
Por convención Rails utilizará el layout products, pero mediante render
:file, renderiza nuestro layout global. Para layouts más anidados quizá
te
valga utilizar el plugin que mencionaste, aunque en lo personal no lo he
utilizado. Además puedes lo anterior llevarlo a un helper para que sea
una
solución más DRY, para los diferentes layouts de tu aplicación.
Un saludo.