Ruby on rails 计算多个不同的平均值
我对rails相当陌生,并且仍然习惯于组合方法。我目前正在尝试创建一个方法,该方法可以平均来自多个列的不同数据。我想在一个方法中完成这一切,以便可以在html表中轻松显示信息 目前,我的模型中有:Ruby on rails 计算多个不同的平均值,ruby-on-rails,ruby,average,Ruby On Rails,Ruby,Average,我对rails相当陌生,并且仍然习惯于组合方法。我目前正在尝试创建一个方法,该方法可以平均来自多个列的不同数据。我想在一个方法中完成这一切,以便可以在html表中轻松显示信息 目前,我的模型中有: def averagedonate scores.group(:donatedate).average('donateamount') scores.group(:donatedate).average('rating') end 我希望能够在这样的表格中使用它们: <% @a
def averagedonate
scores.group(:donatedate).average('donateamount')
scores.group(:donatedate).average('rating')
end
我希望能够在这样的表格中使用它们:
<% @averagedonate.each do |donatedate, donateamount, rating| %>
<tr>
<td><%= donatedate %></td>
<td><%= donateamount %></td>
<td><%= rating %></td>
</tr>
我如何改变我的平均捐赠方法来做到这一点?提前谢谢 我还没有测试过,但是这种效果应该可以用
def averagedonate
scores.select("
AVG(donateamount) as avg_donateamount,
AVG(rating) as avg_rating,
donatedate
")
.group(:donatedate)
end
然后像这样使用它
<% @averagedonate.each do |item| %>
<tr>
<td><%= item.donatedate %></td>
<td><%= item.avg_donateamount %></td>
<td><%= item.avg_rating %></td>
</tr>
<% end %>