相关数据的总和

时间:2011-12-02 03:49:47

标签: ruby-on-rails

我正在为自己构建一个Rails费用跟踪器。我只是有类别和费用,我想在类别索引视图中显示总相关费用的总和。

现在有一个类别has_many:费用和一个费用属于:类别。

什么是在类别页面上显示总相关费用总和的最佳方法,例如“杂货”行在迭代类别列表时显示?

我认为这是一个很容易找到的东西,但我已经碰了一下。

2 个答案:

答案 0 :(得分:3)

您可以在类别模型中编写总费用的方法,如下所示:

def total_expenses
  self.expenses.sum(:amount) # assuming amount is the column holding expenses amount
end

的形式访问它
category = Category.find(id)
category.total_expenses 

希望这有帮助:)

答案 1 :(得分:0)

在您的控制器中

Category.all.each do |category|
  total = 0
  category.expenses.each {|expense| total += expense }
  @category_expenses[expense.name] = total
end

然后在视图中迭代@category_expenses。