Нет типа данных для массива в упругом поиске.Всякий раз, когда вы отправляете массив как значение свойства типа x , это свойство становится массивом, принимающим только значения типа x .
Так, например, вы создалисвойство, как показано ниже:
{
"tagIds": {
"type": "integer"
}
}
И вы индексируете документ со значениями, как показано ниже:
{
"tagIds": [124, 452, 234]
}
Затем tagIds
автоматически становится массивом целых чисел.
Для вашего случая все, что вам нужно сделать, это создать поле скажем name
с типом как keyword
.И убедитесь, что вы всегда передаете массив в это поле, даже если он должен содержать одно значение, чтобы всегда быть массивом.Ниже приводится то, что вам нужно: Отображение:
PUT test
{
"mappings": {
"_doc": {
"properties": {
"name": {
"type": "keyword"
}
}
}
}
}
Индексирование документа:
PUT test/_doc/1
{
"name" : ["name one"]
}