$addToSet
là thao tác cập nhật, nếu bạn muốn cập nhật một tài liệu, bạn có thể sử dụng Collection.UpdateOne()
phương pháp.
Sử dụng bson.M
và / hoặc bson.D
để mô tả bộ lọc của bạn và cập nhật tài liệu.
Ví 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)
Đây là một ứng dụng hoàn chỉnh, có thể chạy được kết nối với máy chủ MongoDB và thực hiện thao tác cập nhật ở trên:
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)