gpt4 book ai didi

elasticsearch - Elasticsearch Groovy脚本eachWithIndex

转载 作者:行者123 更新时间:2023-12-03 01:52:36 26 4
gpt4 key购买 nike

这是一个时髦的脚本。问题是 ctx._source.academies.remove(index),因为ctx在此处不可见。索引变量是正确的...但是我不能在那里使用ctx。有什么建议么?

{
"script" : "ctx._source.academies.eachWithIndex { it, index -> if(it['academy_id'] == academy_id) ctx._source.academies.remove(index) }",
"params": {
"academy_id": 344
}
}

最佳答案

你有试过吗

ctx._source.academies.removeAll { it['academy_id'] == academy_id }

如果需要检查与项目列表匹配的 academy_id,则可以使用以下内容:(闭包应满足条件)
ctx._source.academies.removeAll { it['academy_id'] in [academy_id, some_other_id] }

从 Elasticsearch 的 Angular 来看,我认为脚本可以如下重写:
{
"script" : "ctx._source.academies.removeAll { it['academy_id'] in academy_ids }",
"params": {
"academy_ids": [344, 345, 346]
}
}

关于elasticsearch - Elasticsearch Groovy脚本eachWithIndex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39166777/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com