【发布时间】:2012-11-29 22:43:16
【问题描述】:
我的模型中有以下内容:
searchable do
boost { image? ? 2.0 : 1.0 }
end
我在我的控制器中执行以下操作:
@search = Profile.solr_search do
with :is_private, false
without(:id).equal_to(current_profile.id)
order_by :score, :desc
paginate page: (params[:page] || 1), per_page: 9
end
我在 Rails 控制台中尝试了Profile.solr_reindex,但结果的顺序没有改变。 order_by :random 有效,order_by :name 有效,但我无法按分数排序。这就像我的文档提升不起作用。我的目标是让所有设置了图像的个人资料首先出现。我目前得到的是第一个结果是一个带有图像的配置文件,然后是一堆无图像的配置文件,然后是另一个带有图像的配置文件。
编辑:认为我没有在模型中为image 定义字段可能很重要,所以我尝试将string :image 添加到Profile。没有运气。
【问题讨论】:
-
为什么要明确地通过分数来提升?默认情况下。
标签: ruby-on-rails ruby search solr sunspot