copy_to字段引用elasticsearch中的父字段

时间:2014-05-12 20:02:57

标签: elasticsearch

这是我的产品文档类型的映射。我在映射中有"copy_to" : "product_all" 我希望品牌中的标签价值应该复制在" product_all'在产品中。它是从内部对象引用外部对象中的字段的正确方式,即(来自品牌的类型产品中的product_all),下面的映射不起作用,因为我没有得到结果以便进行查询在product_all字段中获取品牌标签的价值。我错过了什么吗?

{
  "product": {
    "_timestamp": {
      "enabled": true,
      "store": true
    },
    "_all": {
      "enabled": false
    },
    "dynamic": "strict",
    "properties": {
      "brand": {
        "properties": {
          "id": {
            "type": "long"
          },
          "label": {
            "type": "multi_field",
            "fields": {
              "label": {
                "type": "string",
                "index_analyzer": "productAnalyzer",
                "search_analyzer": "productAnalyzer"
              },
              "raw": {
                "type": "string",
                "index": "not_analyzed"
              }
            },
            "copy_to": "product_all"
          }
        }
      },
      "product_all": {
        "type": "string",
        "index_analyzer": "productAnalyzer",
        "search_analyzer": "productAnalyzer"
      }
    }
  }
}

1 个答案:

答案 0 :(得分:0)

我在mutifield的label.label中移动了“copy_to”:“product_all”。现在它可以工作

"label": {
            "type": "multi_field",
            "fields": {
              "label": {
                "type": "string",
                "copy_to": "product_all"
                "index_analyzer": "productAnalyzer",
                "search_analyzer": "productAnalyzer"
              },
              "raw": {
                "type": "string",
                "index": "not_analyzed"
              }
            }

          }