按属性和@random排序思维狮身人面像?

时间:2010-12-08 23:32:24

标签: ruby-on-rails ruby random sphinx

所以我希望能够先按属性排序,然后在具有相同属性值的属性中进行排序。

如:

{ :sort_mode => :extended, :order => "attribute DESC, @random ASC" }

在我的情况下,属性是布尔值,所以我只希望true之前的所有属性都显示在false之前,但是对于每个true中的顺序}和false桶是随机的。

出于某种原因,这不会返回任何结果。如果我修改上述内容,并将@random更改为@relevance,则可以正常工作:

{ :sort_mode => :extended, :order => "attribute DESC, @relevance ASC" }

使用@random与其他属性一起排序是否有问题?如果是这样,我的问题是否有不同的解决方案?

谢谢!

1 个答案:

答案 0 :(得分:0)

当您使用@random(您的第一个示例)时,您是否可以查看原始搜索结果 - 可能有错误或警告可以解释更多:

search = ThinkingSphinx.search(
  :sort_mode => :extended,
  :order     => 'attribute DESC, @random ASC'
)
search.results
search.results[:error]