Thinking Sphinx:连接表关系的属性总和

时间:2011-09-17 19:13:03

标签: ruby-on-rails thinking-sphinx

我通过连接表有多对多的关系。此连接表有一个附加字段,一个整数。

现在出于过滤目的,我想向其中一个模型添加一个属性,反映相关条目的这个附加字段的总和。

我尝过这样的话:

has "SUM(<join_table_name.field_name>)", :as => :availability, :type => :int

但这只会在运行rake ts:rebuild时产生错误,例如“nil不是符号”。我假设我做错了,所以在我添加大量不必要的额外信息之前,我想我会看到有人知道这样做的正确方法吗?

1 个答案:

答案 0 :(得分:2)

我认为你几乎就在那里 - 但首先,它是:integer,而不是:int - 其次,如果连接没有被任何其他字段或属性正常引用,那么你需要确保它是查询的一部分:

join join_assoc

除此之外,它看起来都很好。