如果我们想将一个集合传递给部分,我们这样做:
<%= render :partial => "post", :collection => @posts %>
如果我们想在自定义变量中传递单个对象,我们这样做:
<%= render :partial => "item", :locals => { :item => @advertisement } %>
现在我应该怎么做才能传递一个集合,通过一个自定义变量“代理”它(如第二种情况)?
如果我们想将一个集合传递给部分,我们这样做:
<%= render :partial => "post", :collection => @posts %>
如果我们想在自定义变量中传递单个对象,我们这样做:
<%= render :partial => "item", :locals => { :item => @advertisement } %>
现在我应该怎么做才能传递一个集合,通过一个自定义变量“代理”它(如第二种情况)?
就像在你的第二个例子中那样通过当地人传递它
<%= render :partial => "item", :locals => { :posts => @posts } %>
您可以使用另一种调用部分的方式:
render(:partial => 'post', :object => @posts)
我发现使用 :as 参数更加清晰:
<%= render :partial => "item", :collection => @rabbits, :as => :item %>