以下是突出显示字段所有字段的示例查询
resp = es.search(index="test", body={"from": 0, "size": 1000, "query": {"bool": {"must": {"query_string": {"query": "Pencil" + '*', "fields": ["name^24"]}}}}, "highlight": { "fields": { "*": {}}}})
我最后得到如下输出
{'highlight': {'name': ['<em>Pencil</em>']}}
我在标题、描述的很多地方都有“铅笔”。有没有办法在检索时在所有地方“铅笔”。
基本上铅笔出现的地方,我需要确定,它有点突出
答案 0 :(得分:0)
因为您已将匹配字段指定为 name
,即 "fields": ["name"]
,您的突出显示将仅返回名称字段,如果您想在所有字段中突出显示,请在突出显示查询中添加 "require_field_match": false
。>
您的突出显示查询必须如下所示
"highlight" : {
"require_field_match": false,
"fields": {
"*" : {}
}
}