#elasticsearch
#elasticsearch
Вопрос:
Я тестирую ES, и я бы выделил результаты запроса, но это не работает с моим простым запросом :
var myQuery = {
"query": {
"bool": {
"must": {
"query_string": {
"query": mySearchText "~3"
}
}
}
},
"highlight": {
"fields": {
"*":{}
}
}
};
Где я допустил какую-то ошибку, пожалуйста?
Спасибо за все.
PS: это образец документа
{
"id_stage" : "3897",
"intitule_stage" : "Le surendettement des particuliers",
"objectifs" : "Acquu00e9rir les compu00e9tences suivantes :rn*Connau00eetre de maniu00e8re approfondie les dispositions de la loi sur le surendettement des particuliers.rn*Mau00eetriser la procu00e9dure.",
"contenu" : "*Introduction :rn-Du00e9finitions. Bilans chiffru00e9s. Statistiques.rn-La procu00e9dure de la Loi Borloo (juin 2003 et du00e9cret 2004) : le "ru00e9tablissement personnel".rn-La loi Lagarde (juillet 2010) et ses du00e9crets d'application.rn-Pru00e9vention du surendettement.rn*Les conditions gu00e9nu00e9rales d'application de la procu00e9dure de surendettement :rn-Un du00e9biteur, personne physique de bonne foi.rn-Un u00e9tat de surendettement.rn-Des dettes non professionnelles exigibles et u00e0 u00e9choir.rn*La procu00e9dure devant la commission de surendettement :rn-Ouverture, du00e9roulement et clu00f4ture de la procu00e9dure.rn*La procu00e9dure devant le juge de l'exu00e9cution :rn-Absence de contestation des mesures recommandu00e9es par la commission de surendettement.rn-Contestation des mesures recommandu00e9es par la commission.rn-Consu00e9quences de la force exu00e9cutoire.",
"pre_requis" : "",
"mmp" : "",
"sessions" : [{
"id_session" : "4775",
"debut" : "2016-11-29",
"date_fin" : "2016-12-02",
"ville" : "PARIS"
}
]
}
Ответ №1:
Если вы хотите выделить соответствующие сегменты во всех полях, вам следует использовать
"highlight": {
"fields": {
"_all":{}
}
}
Вместо
"highlight": {
"fields": {
"*":{}
}
}
Комментарии:
1. Это не кажется лучше, возвращаемый json не имеет выделения, он выглядит так: Object {_index: «cerf», _type: «stages», _id: «AVeVL_MJ_dxMRsa6qXrw», _score: 0.11006123, _source: Object} _id: «AVeVL_MJ_dxMRsa6qXrw» _index: «cerf» _score : 0.11006123_source: объект _type: «этапы» прото : Объект
2. Можете ли вы добавить образец документа к своему вопросу?
3. Yes { «id_stage» : «3897», «intitule_stage» : «Le surendettement des particuliers», «objectifs» : «Acquu00e9rir les come surendettement des particuliers.rn*Mau00eetriser la procu00e9dure.», «contenu» : «*Introduction :rn-Du00e9finitions. enttoire.», «pre_requis»: «», «mmp»: «», «sessions»: [{ «id_session»: «4775», «debut»: «2016-11-29», «date_fin»: «2016-12-02», «ville»: «ПАРИЖ» } ] }
4. Есть ли кто-нибудь, кто может помочь заставить функцию выделения работать?
Ответ №2:
Я уверен, что вы, должно быть, уже решили эту проблему, но для других, сталкивающихся с той же проблемой, вот что, я думаю, вы могли пропустить
Поле может использоваться для выделения, только если доступно исходное строковое значение, либо из поля _source, либо в виде сохраненного поля.
Поле _all отсутствует в поле _source, и оно не сохраняется или не включено по умолчанию, и поэтому не может быть выделено. Есть два варианта. Либо сохраните поле _all, либо выделите исходные поля.