Pasar una variable a un parcial, Rails 3?

Tengo un ciclo como este:

   

Luego, en mi parcial medio, ¿cómo accedo a la publicación actual?

Prueba esto:

 <% @posts.each do |post| %> <%= render 'middle', :post => post %> <% end %> 

De esta manera, tendrás una post variable local disponible dentro del parcial.

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' %> 
 <% @posts.each do |post| %> <% render middle, :post => post %> <% end %> 

Ahora puede acceder a la publicación como la post variable local en el parcial

Reemplace <%= render middle %> con <%= render middle, :post => post %> . Luego, en su parcial middle , puede acceder a la variable de post .