【发布时间】:2011-11-24 04:40:07
【问题描述】:
我有两个模型客户和报告。一个客户有_许多报告和一个报告属于_一个客户。客户具有 :specialty 属性(医生、牙医、律师),报告具有 :amount 属性。每个客户每年在日历季度生成 4 份报告。
我想要做的是能够对给定 :specialty 的条目的 :amounts 进行平均,例如律师。我可以从这个特殊的 :specialty 中得到一个包含这些值的大数组,如下所示:
Quarter.includes(:client).where('clients.specialty=?','Lawyer').map(&:amounts)%>
我想知道是否有一种方法可以使用 :specialty 为每个客户端打印一个数组,然后在另一个数组中平均它们。我是否在这里使用这样的循环:
<% Quarter.includes(:client).where('clients.specialty=?', 'Lawyer').each do |c| %>
<%= c.amount %>
<% end %>
如果是这样,我如何将其分离出来,而不是仅仅一个巨大的数组,而是根据它所属的客户端将它们分开?
【问题讨论】:
标签: arrays ruby-on-rails-3 for-loop average