Я не могу получить подсветку с помощью ElasticSearch 0.90 для работы с внутренними полями. Например, вот мой документ:ElasticSearch Выделение внутреннего поля
{ "foo": {
"bar": "test bonsai"
}}
Запрашиваемый как:
{ "query": {
"query_string": {
"query": "bonsai"
}
},
"highlight": {
"pre_tags": ["<b>"],
"post_tags": ["</b>"],
"fields": {
"foo.bar": {}
}
}
}
возвращает результат запроса, но без выделения информации. Если я не вложу свое поле (например, {"foo": "test bonsai"} и запросит подсветку для поля "foo" вместо "foo.bar"), тогда все будет работать нормально. Но я не могу заставить его работать с вложенными полями.
Я пробовал разные настройки для полей, включая «foo», «bar», «_all», «foo. » и «». Я также попытался сыграть с отображением, включая определение «term_vector» (with_positions_offsets), «индекс», «анализатор», «сохраненный» и «include_in_all». Ничего не делает трюк.
В документации, как представляется, поддерживается (here, посмотрите на «bio.title», например). Но это не работает, даже если я использую тот же самый запрос.
Он должен работать. Можете ли вы, пожалуйста, разместить информацию о карте? Чтобы получить сопоставление: сделайте GET для http: // localhost: 9200/yourindex/yourtype/_mapping. Чтобы иметь возможность выделить elasticsearch, необходимо получить данные из собственного магазина или из источника. –