Недавно я работал с Elasticsearch 2 и хотел запросить запрос по всем текстовым полям.Поиск по всем полям с подсветкой
GET myindex/mydata/_search
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad"
}
},
"highlight": {
"fields": [ { "*": {} } ]
}
}
Запрос возвращает ожидаемые результаты, но без какой-либо подсветки. Я испытал, что я получаю подсветку, когда я сузить поиск fields
вручную:
{
"query": {
"simple_query_string": {
"query": "Raketenfahrrad",
"fields": ["MainTitle","SubTitle","Author","Content"]
}
},
"highlight": {
"fields": [ { "*": {} } ]
}
}
Но это не подходит мое требование «Поиск по всем» и потерпит неудачу, когда следующее новое свойство добавляется mydata
типа.
Нет, это не работает на последней Elasticsearch (версия 2.1.0, Lucene 5.3.1)! Может быть, это ошибка? – Marcel
Я запустил запрос на 1.7, извините, пожалуйста, посмотрите мой обновленный ответ. Он работает над 2.0, это помогает? – ChintanShah25
Эй, еще короче: '" выделить ": {" fields ": {" * ": {" require_field_match ": false}}}' – Marcel