Ell*_*iot 139 ruby ruby-on-rails ruby-on-rails-3
我有这样的循环:
<% @posts.each do |post| %>
<% render middle %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
然后在我的中间部分,我如何访问当前的帖子?
pol*_*lau 236
试试这个:
<% @posts.each do |post| %>
<%= render 'middle', :post => post %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
像这样你将在局部变量中有一个局部变量post.
Ste*_*man 124
将它作为局部变量赋予partial
<%= render :partial => 'middle', :locals => { :post => post } %>
Run Code Online (Sandbox Code Playgroud)
当然,rails还有一个呈现集合的快捷方式:
<%= render :partial => 'post', :collection => @posts %>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,它将使用局部变量'post'为每个帖子调用部分帖子
您甚至可以在每个帖子之间渲染间隔模板:
<%= render :partial => 'post', :collection => @posts, :spacer_template => 'post_divider' %>
Run Code Online (Sandbox Code Playgroud)
Fel*_*sen 14
<% @posts.each do |post| %>
<% render middle, :post => post %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
您现在可以访问post作为postpartial中的局部变量
sev*_*cat 10
替换<%= render middle %>为<%= render middle, :post => post %>.然后在您的middle部分中,您可以访问该post变量.
| 归档时间: |
|
| 查看次数: |
82968 次 |
| 最近记录: |