2011-04-30 57 views
5

我有一个Rails 3应用程序,其中我的模型包括所有者和属性,每个所有者代表拥有一个或多个属性的个人或机构。如何在使用Rails 3/MetaSearch的查询中选择SUM?

我希望能够搜索我的数据库(SQLite3)并返回按所有者分组的结果。对于每个组,我想显示:

- 所有者的名称(我可以轻松地做到这一点) - 属于此所有者的属性满足搜索条件(即计数)的总数。 - 上一列中计算的所有属性的总值(即总和)。

拥有者has_many属性,属性belongs_to拥有者。另外,“值”是属性的属性。

我正在使用MetaSearch gem,我可以让它正确地返回一组属性。我也可以通过它来按照所有者对结果进行分组,但我无法弄清楚如何显示属性的数量及其总计值。

这里是返回属性列表代码:

@search = Property.group("owner_id").search(params[:search]) 

我曾尝试加入。选择到链是这样的:

@search = Property.select("SUM(value) as mysum").group("owner_id").search(params[:search]) 

但我不能访问此总和当我尝试。有没有人知道处理这种情况的有效方法?

回答