思考狮身人面像组/结果集

时间:2017-01-19 10:15:23

标签: ruby-on-rails search grouping sphinx thinking-sphinx

我尝试使用TS进行搜索,其中结果按属性分组(在示例中:类别)。

这样的结构(不必是数组):

[[id: 1, name: this, category: foo] [id: 2, name: this, category: foo]],
[[id:3, name: this, category: bar], [id:4, name: this, category: bar]]

我想我可以通过属性对结果进行排序,然后通过属性生成我想要的结构,但是我试图看看它是否可能是TS执行此操作对我而言,无需使用rails来检查每个结果项。

我需要这个结构来显示按属性分类的结果元素。

我尝试过使用GROUP_BY,但每个属性只返回1个元素,这让我觉得我要么不理解GROUP_BY,要么我没有正确地进行查询:

Video.search(Search.build_options.merge({:conditions => {:name => "this"}, group_by: :category}))

我正在使用当前版本的Sphinx和Thinking Sphinx,

1 个答案:

答案 0 :(得分:1)

正如Barry在评论中指出的那样,Sphinx的分组方法是为每个分组的属性值返回一条记录,而不是该值的结果集合。因此,Thinking Sphinx也是这样的。

如果你想要为每个值收集结果,你将不得不自己构建 - 你绝对不能依靠TS来为你做这些。