elasticsearch用于自定义映射的动态模板不起作用

时间:2017-04-27 16:22:27

标签: rest elasticsearch

我正在尝试添加动态模板。我已经完成了

scrollpercent

所以" my_index_items"我得到了类型" item",当我现在索引一个项目时(项目有一个字段" sales_price_formatted"它的值类似于" 12,34")和查找使用GET' localhost:9200 / my_index_items / item / _mapping'它显示" sales_price_formatted"类型"文字"而不是" double"。

我做错了吗?我想,如果一个项目有一个在"匹配"中定义的字段。我的动态模板中的属性,那么它不会使用自己的默认机制,而是在这里定义的机制?

1 个答案:

答案 0 :(得分:0)

您的命令中有一些缺少大括号。它应该是这样的:

{
  "mappings": {
    "item": {
      "dynamic_templates": [
        {
          "sales_price_in_cent_as_long": {
            "match": "sales_price_in_cent",
            "mapping": {
              "type": "long"
            }
          }
        },
        {
          "sales_price_formatted_as_double": {
            "match": "sales_price_formatted",
            "mapping": {
              "type": "double"
            }
          }
        }
      ]
    }
  }
}