簡體   English   中英

Elasticsearch高亮不突出結果

[英]Elasticsearch highlight doesn't highlight results

我正在測試ES,我將突出顯示查詢的結果,但不適用於我的簡單查詢:

            var myQuery = {
                "query": {
                    "bool": {
                        "must": {
                            "query_string": {
                                "query": mySearchText + "~3"
                            }
                        }
                    }
                },
                "highlight": {
                    "fields": {
                        "*":{}
                    }
                }
            };

請問我在哪里弄錯了? 謝謝大家

PS:這是一個文檔樣本

            {
                "id_stage" : "3897",
                "intitule_stage" : "Le surendettement des particuliers",
                "objectifs" : "Acqu\u00e9rir les comp\u00e9tences suivantes :\r\n*Conna\u00eetre de mani\u00e8re approfondie les dispositions de la loi sur le surendettement des particuliers.\r\n*Ma\u00eetriser la proc\u00e9dure.",
                "contenu" : "*Introduction :\r\n-D\u00e9finitions. Bilans chiffr\u00e9s. Statistiques.\r\n-La proc\u00e9dure de la Loi Borloo (juin 2003 et d\u00e9cret 2004) : le \"r\u00e9tablissement personnel\".\r\n-La loi Lagarde (juillet 2010) et ses d\u00e9crets d'application.\r\n-Pr\u00e9vention du surendettement.\r\n*Les conditions g\u00e9n\u00e9rales d'application de la proc\u00e9dure de surendettement :\r\n-Un d\u00e9biteur, personne physique de bonne foi.\r\n-Un \u00e9tat de surendettement.\r\n-Des dettes non professionnelles exigibles et \u00e0 \u00e9choir.\r\n*La proc\u00e9dure devant la commission de surendettement :\r\n-Ouverture, d\u00e9roulement et cl\u00f4ture de la proc\u00e9dure.\r\n*La proc\u00e9dure devant le juge de l'ex\u00e9cution :\r\n-Absence de contestation des mesures recommand\u00e9es par la commission de surendettement.\r\n-Contestation des mesures recommand\u00e9es par la commission.\r\n-Cons\u00e9quences de la force ex\u00e9cutoire.",
                "pre_requis" : "",
                "mmp" : "",
                "sessions" : [{
                        "id_session" : "4775",
                        "debut" : "2016-11-29",
                        "date_fin" : "2016-12-02",
                        "ville" : "PARIS"
                    }
                ]
            }

如果您想突出顯示所有字段中的相關細分,則應使用

"highlight": {
  "fields": {
    "_all":{}
  }
}

代替

"highlight": {
  "fields": {
    "*":{}
  }
}

我相信您現在一定已經解決了這個問題,但是對於其他面臨相同問題的人,這是我認為您可能已經錯過的事情

如果原始字符串值可用於_source字段或作為存儲字段,則該字段只能用於突出顯示。

_all字段不存在於_source字段中,並且默認情況下未存儲或啟用它,因此無法突出顯示。 有兩種選擇。 存儲_all字段或突出顯示原始字段。

http://nocf-www.elastic.co/guide/en/elasticsearch/reference/current/mapping-all-field.html#highlighting-all-field

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM