【发布时间】:2018-07-12 12:34:16
【问题描述】:
elasticsearch-php 6.0 中的语句:
这意味着 upsert 将尝试运行您的更新脚本,但如果文档不存在(或您尝试更新的字段不存在),则会插入默认值。
当我尝试将字段更新到现有文档时,它不起作用并返回 null_pointer_exception。尝试使用 curl 会返回相同的结果。
Elasticsearch 参考 [6.1] 没有提到可以更新插入字段。可能是版本问题。没有 Elasticsearch-PHP [6.1] !!
参考中的示例:
curl -XPOST 'localhost:9200/test/type1/1/_update?pretty' -H 'Content-Type: application/json' -d'
{
"script" : {
"source": "ctx._source.ava += params.count",
"lang": "painless",
"params" : {
"count" : 4
}
},
"upsert" : {
"ava" : 1
}
}
'
当文档存在且字段 'ava' 不存在时不起作用。
那么,问题是如何将一个字段插入到现有文档中? curl 例子没问题,谢谢。
【问题讨论】:
标签: elasticsearch