Предложите поле не найдено, хотя оно проиндексировано - PullRequest
0 голосов
/ 29 июня 2018

Добрый день:

Я пытаюсь выполнить автозаполнение с помощью ElasticSearch. В настоящее время у меня есть поле для сопоставления, которое называется предложить . У меня есть следующий запрос:

POST dev/facility/_search
{
  "suggest": {
        "song-suggest" : {
            "prefix" : "faci", 
            "completion" : { 
                "field" :"suggest" 
            }
        }
    }
}

Однако я получаю эту ошибку: no mapping found for field [suggest]. Мое сопоставление можно увидеть здесь:

{
  "dev": {
    "mappings": {
      "facility": {
        "properties": {
          "slug": {
            "type": "text",
            "fields": {
              "keyword": {
                "type": "keyword",
                "ignore_above": 256
              }
            }
          },
          "state": {
            "type": "text",
            "fields": {
              "keyword": {
                "type": "keyword",
                "ignore_above": 256
              }
            }
          },
          "suggest": {
            "properties": {
              "input": {
                "type": "text",
                "fields": {
                  "keyword": {
                    "type": "keyword",
                    "ignore_above": 256
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Я использовал NEST для генерации своего отображения, и это моя аннотация на поле:

    [Completion]
    public CompletionField Suggest { get; set; 
...