data := interface{} // 要添加的内容 可以是结构体,也可以是bson filter := bson.M{} // 过滤内容,是否插入信息以这个为准,如果有这个内容,则不进行任何操作 // 附加参数
upsert := true upsertOptions := options.UpdateOptions{ UpdateOptions: &options.UpdateOptions{Upsert: &upsert}, }
// 把更新文档格式化 updateDoc := bson.M{ "$setOnInsert": data, } if err := db.collection("test").UpdateOne(context.Background(), filter, updateDoc, upsertOptions); err != nil { fmt.Println("UpsertSetOnInsert err", err) return err }
标签:Mongo,err,data,updateDoc,添加,Go,bson,数据,UpdateOptions From: https://www.cnblogs.com/zyfeng/p/17603320.html