我想基于任何文本字段增强结果中的文档。
例如考虑采用以下模式
class Post < ActiveRecord::Base
searchable do
text :title, :body
text :comments do
comments.map { |comment| comment.body }
end
text :tags
boolean :featured
end
end
要增强布尔字段,我们可以简单地添加一个boost子句,如下所示:
Post.search do
fulltext '*:*' do
boost(2.0){with(:featured, true)}
end
end
我想在文本字段上实现提升,假设我想获得所有帖子,但是标记为“重要”的帖子必须放在第一位,就像这样:
Post.search do
fulltext '*:*' do
boost(2.0){fulltext 'important', fields: :tags}
end
end
我知道上面的代码是不正确的,但是可以解释所需的行为。
答案 0 :(得分:0)
尝试一下
Post.search do
fulltext '*:*' do
boost(2) { with(:tags).equal_to('important') }
end
end