【发布时间】:2017-05-15 10:50:38
【问题描述】:
我在我的 Rails 应用程序中使用 Solr sunspot gem。我现在拥有的:order_by(:some_time, :desc)。我需要做的是:
如果:some time 列值在最后一小时内,则所有符合此条件的记录按:status 列排序,否则按:some_time 列排序
我在文档中没有找到类似的东西,我不确定什么是实现这一点的好方法。
PS:我尝试在solr搜索完成后进行分组和排序,但是看起来很重,我相信事情应该是一致的,所以如果有机会用solr做的话,我想去。
【问题讨论】:
-
例如如果结果有 100 条记录,其中 25 条满足条件,那么您是希望 25 条按
status排序,其余按sometime排序,还是所有记录按status排序? -
@Md.FarhanMemon 如果其中 25 个满足条件 (
:some_time > Time.now - 1.hour) 然后按:status和:some_time订购,其他所有按:some_time订购
标签: ruby-on-rails solr sunspot-rails