返回有关更新elasticsearch的文档

时间:2014-06-07 18:29:16

标签: elasticsearch

让我们说我正在更新用户数据

curl -XPOST 'localhost:9200/test/type1/1/_update' -d '{
    "doc" : {
        "name" : "new_name"
    },
    "fields": ["_source"]
}'

下面是我执行更新时收到的一个例子

{
  "_index" : "test",
  "_type" : "type1",
  "_id" : "1",
  "_version" : 4
}

如何执行返回给定文档更新后的更新?

1 个答案:

答案 0 :(得分:3)

有关在执行Elasticsearch更新时返回字段的文档有点误导。它实际上使用了与Index api相同的方法,在url上传递参数,而不是在更新中传递字段。

在您的情况下,您将提交:

curl -XPOST 'localhost:9200/test/type1/1/_update?fields=_source' -d '{
    "doc" : {
        "name" : "new_name"
    }
}'

在我对Elasticsearch 1.2.1的测试中,它返回如下内容:

{
  "_index":"test",
  "_type":"testtype",
  "_id":"1","_version":9,
  "get": {
    "found":true,
    "_source": {
        "user":"john",
        "body":"testing update and return fields",
        "name":"new_name"
      }
   }
}

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-index_.html http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-update.html