Ruby on Rails - 在集合中呈现集合?

时间:2011-12-07 02:02:04

标签: ruby-on-rails

我的用户模型有很多项目,每个项目都有很多发票。

我正在调用以下渲染

render :partial => "layouts/allInvoices", :collection => @projects, :as => :p

在allInvoices中,我希望迭代每个项目的发票。

我可以用

- p.invoices.each do |i|

但我宁愿使用收藏品。我不确定如何用它来表达

= render :partial => "layouts/invoiceItem", :collection => p.invoices, :as => :i

不起作用。我是否需要在控制器内设置嵌套迭代?

由于

1 个答案:

答案 0 :(得分:0)

你的意思是......

= render "layouts/allInvoices", :p => @projects

然后

- # layouts/allInvoices
- p.invoices.each do |invoice|
  = render "layouts/invoiceItem", :i => invoice

- # layouts/invoiceItem
= i.id   # this gives id of Invoice