部分和局部变量

时间:2009-09-18 18:13:56

标签: ruby-on-rails partials

如果我们想将集合传递给partial,我们会这样做:

<%= render :partial => "post", :collection => @posts %>

如果我们想在自定义变量中传递单个对象,我们会这样做:

<%= render :partial => "item", :locals => { :item => @advertisement } %>

现在该怎么做才能传递集合,通过自定义变量“代理”它(如第二种情况)?

3 个答案:

答案 0 :(得分:3)

只需通过第二个例子中的本地传递

<%= render :partial => "item", :locals => { :posts => @posts } %>

答案 1 :(得分:1)

您可以使用其他方式调用partials:

render(:partial => 'post', :object => @posts)

答案 2 :(得分:1)

我发现使用:作为参数更清晰:

<%= render :partial => "item", :collection => @rabbits, :as => :item %>