RunCommand
एक मोंगो कमांड निष्पादित करना है। आप जो करने का इरादा रखते हैं वह है संग्रह के सभी दस्तावेजों को ढूंढना, परिवर्तन करना और फिर उन्हें बदलना। आपको चाहिए Find()
, कर्सर, और ReplaceOne()
. यहाँ एक समान कोड स्निपेट है।
if cur, err = collection.Find(ctx, bson.M{"hometown": bson.M{"$exists": 1}}); err != nil {
t.Fatal(err)
}
var doc bson.M
for cur.Next(ctx) {
cur.Decode(&doc)
doc["updated"] = time.Now()
if result, err = collection.ReplaceOne(ctx, bson.M{"_id": doc["_id"]}, doc); err != nil {
t.Fatal(err)
}
if result.MatchedCount != 1 || result.ModifiedCount != 1 {
t.Fatal("replace failed, expected 1 but got", result.MatchedCount)
}
}
मेरे पास एक पूरा उदाहरण है TestReplaceLoop()