Templates y partials

Tengo un trozo de rhtml que quiero que esté disponible para todas las
vistas
como un fichero include (se alojaría en la carpeta de layouts). He visto
que
los partials son includes para un grupo de vistas y que se invocan con
‘render_partial’. Seguro que hay algo parecido a ‘render_template’.
¿Cual es
el sistema?

un saludo
Rafa

lo puedes hacer poniendo esto en el controlador

layout ‘mi_layout’

def index

end

Saludos

On Sep 25, 2007, at 9:48 PM, Rafa C. wrote:

Tengo un trozo de rhtml que quiero que esté disponible para todas
las vistas como un fichero include (se alojaría en la carpeta de
layouts). He visto que los partials son includes para un grupo de
vistas y que se invocan con ‘render_partial’. Seguro que hay algo
parecido a ‘render_template’. ¿Cual es el sistema?

Hoy en dia ya no se usa render_partial, sino

render :partial => …

Las partials no tienen por que estar en el directorio de la vista que
las incluye. Echale un vistazo a la sintaxis del ejemplo que la tiene
en “shared” de la seccion “Rendering partials” de

ActionController::Base

Lo mismo sirve para “layouts”.

– fxn

On Sep 25, 2007, at 11:52 PM, Rafa C. wrote:

Al final viendo la documentación de Xavier me he dado cuenta de que
layouts estaría reservada y no funciona así. He puesto el fichero
en una carpeta ‘shared’ y con

render :partial=> ‘shared/topmenu’

Si te encaja mejor en layouts, render :partial => ‘layouts/topmenu’
deberia funcionar igualmente.

Gracias, pero no es eso exactamente lo que queria

tengo el layout de usuarios y quiero incluir un _topmenu.rhmtl que está
en
la misma carpeta layouts.

layouts/usuarios.rhtml:

... <-- incluir _tommenu.rhtml

<%=yield%>

Al final viendo la documentación de Xavier me he dado cuenta de que
layouts
estaría reservada y no funciona así. He puesto el fichero en una carpeta
‘shared’ y con

render :partial=> ‘shared/topmenu’

ha funcionado.

Gracias a los dos.

ATENCION: Escribo esto para rectificar un error mío. Quiero que lo sepan
todos para que nadie tenga una idea equivocada de como resolver este
problema.

Xavier, tenías toda la razón.

Hoy he estado probando de nuevo el tema de los partials con otros nuevos
y
me he dado cuenta de que no me aparecían porque no usaba <%=, sino solo
<%.

Y lógicamente, cuando usaba un nombre de partial que no existía la
página
daba un error de modo que si la página se mostraba, aunque fuera vacía,
por
fuerza tenía que estar bien montada. Lo probé con un _kk.rhtml en
layouts y
poniendo

<%=render :partial => ‘layouts/kk’ %>

funcionó perfectamente.

Un saludo a todos y disculpad la novatada.

Lo probé, pero no me funcionaba. No recuerdo si daba error o no aparecía
nada, pero no me iba, por eso deduje que ‘layouts’ parecía tener un
tratamiento especial.

Hola

creo que podes usar

<%= render :layout => “tu_layout” %>

Hola, quizas este link te puede ayudar a aclarar un poco tus dudas

Saludos Cordiales

Estoy interesado en el tema de los renders, la verdad he leido mucho
sobre el tema pero aun no logro saber la diferencia entre render y
redirect (Mi primer inconveniente).

Lo que me ha llevado a instruirme sobre el tema es que necesito obtener
el codigo HTML de una URL compuesta por un :controller => c un :action
=> a y unos :params => p, pero por mas que leo lo unico que encuentro es
“render_to_text”, funciona pero no logro usarlo con propiedad ya que
logro ejecutar la URL con el controllador c, con la action a pero me
genera error ya que no puedo enviarle los parametros.

Alguien sabe el funcionamiento correcto de render para poder invocar con
parametros??

Gracias de antemano por cualquier ayuda e info.