如果它不是现有元素,则附加到Elasticsearch字段列表/数组

时间:2015-06-30 15:42:05

标签: elasticsearch

说我们有:

curl -XPOST "http://localhost:9200/t/t/1" -d'
{
     "hobbies" : ["a", "b"]
}'

我知道我可以这样做以追加爱好:

curl -XPOST "http://localhost:9200/t/t/1/_update" -d'
{
     "script" : "ctx._source.hobbies += hobby",
     "params" : {
         "hobby" : "c"
     }
}'

但是我怎么能这样做,如果爱好不是'c'但是'b',我不会因为爱好而以[“a”,“b”,“b”]结束?所以如果“c”不是业余爱好,它只附加“c”?

1 个答案:

答案 0 :(得分:6)

您可以通过稍微修改OP中的脚本来实现相同的目标

示例:

<div ng-repeat="location in locations.locationsList">{{location}}</div>

上面的示例假设字段爱好存在且是列表,否则您需要包含更多逻辑来处理这些。