1 回答
TA贡献1780条经验 获得超5个赞
$addToSet
是一个更新操作,如果你想更新单个文档,可以使用该Collection.UpdateOne()
方法。
使用bson.M
和/或bson.D
类型来描述您的过滤器和更新文档。
例如:
update := bson.M{
"$addToSet": bson.M{
"tags": bson.M{"$each": []string{"camera", "electronics", "accessories"}},
},
}
res, err := c.UpdateOne(ctx, bson.M{"_id": 2}, update)
这是一个完整的、可运行的应用程序,它连接到 MongoDB 服务器并执行上述更新操作:
ctx := context.Background()
client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb://localhost"))
if err != nil {
panic(err)
}
defer client.Disconnect(ctx)
c := client.Database("dbname").Collection("inventory")
update := bson.M{
"$addToSet": bson.M{
"tags": bson.M{"$each": []string{"camera", "electronics", "accessories"}},
},
}
res, err := c.UpdateOne(ctx, bson.M{"_id": 2}, update)
if err != nil {
panic(err)
}
fmt.Printf("%+v", res)
- 1 回答
- 0 关注
- 91 浏览
添加回答
举报