将字段复制到有效负载

时间:2015-06-12 08:06:35

标签: elasticsearch

在Elastic中使用建议器时,可以在索引文档时提供有效负载。每次使用建议者时,其有效载荷将与建议一起提供。

我想将文档的id字段的值添加到有效负载中。虽然在索引时很容易这样做,但我想在映射中处理它,因为我不想改变将文档转换为JSON的方式。

我尝试了以下内容:

POST test
{
    "mappings" : {
        "type1" : {
            "properties" : {
                "id": {"type": "String", "copy_to": ["field1_suggest.payload"]},
                "field1" : { "type" : "string", "copy_to": ["field1_suggest"]},
                "field1_suggest":{"type": "completion", "payloads": true}
            }
        }
    }
}

POST test/type1/1
{
    "id": "payload",
    "field1": "my value"
}

这失败了,因为"有效载荷"不是field_suggest的真实领域:

  

"错误":" MapperParsingException [尝试将值复制到不存在的对象[field1_suggest.payload]]"," status":400

如何自动在有效负载中包含字段?如果不可能,我想我将不得不使用主流查询来获得完成建议......

0 个答案:

没有答案