ruby on rails - rails - Pasar una variable a un parcial, rieles 3?
render partial with parameters rails (4)
Tengo un ciclo como este:
<% @posts.each do |post| %>
<% render middle %>
<% end %>
Luego, en mi parcial medio, ¿cómo accedo a la publicación actual?
Déle al parcial como una variable local
<%= render :partial => ''middle'', :locals => { :post => post } %>
Por supuesto, Rails también tiene un atajo para renderizar colecciones:
<%= render :partial => ''post'', :collection => @posts %>
En este caso, llamará a la publicación parcial para cada publicación con una variable local ''publicación''
Incluso puede renderizar una plantilla espaciadora entre cada publicación:
<%= render :partial => ''post'', :collection => @posts, :spacer_template => ''post_divider'' %>
Prueba esto:
<% @posts.each do |post| %>
<%= render ''middle'', :post => post %>
<% end %>
De esta manera, tendrás una post
variable local disponible dentro del parcial.
Reemplace <%= render middle %>
con <%= render middle, :post => post %>
. Luego, en su parcial middle
, puede acceder a la variable de post
.
<% @posts.each do |post| %>
<% render middle, :post => post %>
<% end %>
Ahora puede acceder a la publicación como la post
variable local en el parcial