登录
首页 >  Golang >  Go问答

在 google go 中使用 Olivere/elastic 更新 ElasticSearch 中的记录

来源:Golang技术栈

时间:2023-04-02 14:26:58 219浏览 收藏

小伙伴们有没有觉得学习Golang很有意思?有意思就对了!今天就给大家带来《在 google go 中使用 Olivere/elastic 更新 ElasticSearch 中的记录》,以下内容将会涉及到golang,若是在学习中对其中部分知识点有疑问,或许看了本文就能帮到你!

问题内容

我正在使用 go 在弹性搜索中插入一条记录,如此处所述:https ://github.com/olivere/elastic 现在,如果我必须部分更新它(假设只有一个像“名称”这样的条目),那么我想使用更新 API。我找不到任何描述如何在oilvere/elastic 中使用此API/函数的文档。我想知道是否有人以前使用过这个并且可以帮助我。

正确答案

所以,我终于让这件事起作用了。这是我用来完成它的代码。

update, err := client.Update().Index("test3").Type("user").Id("2").Doc(map[string]interface{}{"location": message}).Do()
fmt.Println("updated id: ", update.Id)

这对我来说很好。

我尝试了另一种方法来更新它,但它不起作用。我把它贴在这里,以便人们可以查看和检查。是这样的。

update := client.Update().Index("test3").Type("user").Id("2").Script(elastic.NewScript("ctx._source.location = loc").Params(map[string]interface{}{"loc": message}).Lang("groovy"))
fmt.Println("updated id: ", update.Id)

希望这对某人有帮助!

终于介绍完啦!小伙伴们,这篇关于《在 google go 中使用 Olivere/elastic 更新 ElasticSearch 中的记录》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表