mongodb - 如何使用 mongo 驱动程序在 Golang 中实现 MongoDB 自动完成?
问题描述
我正在尝试在 golang 中实现自动完成搜索,但我不断收到语法错误
contactsCollection := c.DB.Database("XYZ").Collection("contacts")
result, err := contactsCollection.aggregate([{
"$search": {
"autocomplete": {
"query": searchQuery,
"path": "email",
"tokenOrder": "any"
}
}
}
])
searchQuery
是输入,电子邮件是我想要进行自动完成的字段。我假设我能够返回result
。
我在这里想念什么?
解决方案
查看一些关于如何在 Go 中使用 MongoDB 客户端的教程或文档。您将需要使用bson包来编写查询。
cursor, err := contactsCollection.Aggregate(ctx, bson.A{
bson.M{"$search": bson.M{"autocomplete": bson.M{
"query": searchQuery,
"path": "email",
"tokenOrder": "any",
}}},
})
if err != nil {
panic(err)
}
var results []MyDocument
err = cursor.All(ctx, &results)
if err != nil {
panic(err)
}
推荐阅读
- reactjs - 使用 TypeScript 进行反应,不要使用 {} 作为类型。{
- ruby - Ruby:rspec 没有捕获异常?
- swift - 如何从 UIDatePicker 获取小时和分钟
- flutter - Flutter : ValueNotifier+ValueListenableBuilderとStateについて
- sql - 如何使用触发器解决我的控制号问题
- java - Eclipse Java 氧气 - 导入 sun.dc.pr.PathStroker 无法解析错误
- java - 如何读取多个基于文本的拼字游戏板,并将它们放入二维数组中?
- javascript - 是否可以在 Js 中对 switch 语句的情况进行索引?
- angular - 在 Typescript 中过滤空的 json 响应
- android - 背景图像不只显示一个蓝色方块