通过突出显示搜索所有字段
Search over all fields with highlighting
我最近在使用 Elasticsearch 2,想请求对所有文本字段的查询。
GET myindex/mydata/_search
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad"
}
},
"highlight": {
"fields": [ { "*": {} } ]
}
}
查询 returns 预期结果但没有任何突出显示。当我手动缩小搜索 fields
时,我遇到了突出显示的情况:
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad",
"fields": ["MainTitle","SubTitle","Author","Content"]
}
},
"highlight": {
"fields": [ { "*": {} } ]
}
}
但这不符合我的要求 "Search over all" 并且在将下一个新的 属性 添加到 mydata
类型时会失败。
从 ES 2.0 开始,仅 对查询的字段执行突出显示,您必须将 require_field_match
选项设置为 false
。 Here是link改成
试试这个
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad"
}
},
"highlight": {
"fields": {
"*": {}
},
"require_field_match" : false
}
}
我最近在使用 Elasticsearch 2,想请求对所有文本字段的查询。
GET myindex/mydata/_search
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad"
}
},
"highlight": {
"fields": [ { "*": {} } ]
}
}
查询 returns 预期结果但没有任何突出显示。当我手动缩小搜索 fields
时,我遇到了突出显示的情况:
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad",
"fields": ["MainTitle","SubTitle","Author","Content"]
}
},
"highlight": {
"fields": [ { "*": {} } ]
}
}
但这不符合我的要求 "Search over all" 并且在将下一个新的 属性 添加到 mydata
类型时会失败。
从 ES 2.0 开始,仅 对查询的字段执行突出显示,您必须将 require_field_match
选项设置为 false
。 Here是link改成
试试这个
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad"
}
},
"highlight": {
"fields": {
"*": {}
},
"require_field_match" : false
}
}