ElasticSearch конвертирует строку в число, используя динамическое отображение - PullRequest
0 голосов
/ 19 февраля 2019

Вот мое упругое отображение поиска:

   "mappings": {
    "_doc": {
      "properties": {
        "totalAmount": {
          "type": "integer"
        }
      },
      "dynamic_templates": [
        {
          "strings_as_longs": {
            "match_mapping_type": "string",
            "match": "*Amount",
            "mapping": {
              "type": "integer"
            }
          }
        }
      ]
    }
  }

Цель - сохранить все поля, которые содержат сумму в качестве числа.После применения этого сопоставления к эластичному результату получается такой результат:

  "totalAmount" : {
        "type" : "integer"
   }

Я отправляю данные в эластичный объект в формате JSON, но все числа представляются в виде строк:

"freeAmount": "10",
"totalAmount": "60"

После полученияУ меня есть эти числа также в виде строк.Это странно для меня, я думал, что эластичный должен преобразовать строки в числа перед сохранением, а затем дать мне их в виде чисел.Должен ли их преобразовать эластик или мне нужно преобразовать все необходимые данные перед сохранением в эластик?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...