我的产品模型具有名称,性别,描述等列,并且这些列通过search_data 方法包含在elasticsearch索引中。
假设我的产品具有以下值
name: 'No Boyfriend No Problem Crop Jumper'
gender : 'women'
description: 'Best crop jumber for now'
当我搜索“妇女跳线”一词时
该产品未出现在搜索结果中。 我正在尝试通过以下查询搜索产品
@products = Product.search(
params[:q],
fields: [:gender, :name, :description],
match: :word_start,
page: params[:page],
per_page: Product::PAGE
)
我应该如何更新我的产品搜索,以使“女士作物套头衫”搜索字词结果包含上述产品。
谢谢
答案 0 :(得分:0)
截至目前看起来像this isn't possible。但是,您可以执行以下操作,它应该可以工作:
def search_data
{
name: name,
gender: gender,
description: description,
all_fields: [name, gender, description].compact.join(' ')
}
end
然后,您只需在查询中搜索all_fields
字段即可。