'requestsCards'
func (db *MongoDB) DeleteCardByToken(ctx context.Context, token string) (*mongo.DeleteResult, error) {
// delete at most one document in which the "token" field is a token of card.
// specify the SetCollation option to provide a collation that will ignore case for string comparisons
opts := options.Delete().SetCollation(&options.Collation{
Locale: "en_US",
Strength: 1,
CaseLevel: false,
})
res, err := db.conn.Collection(CollectionRequestsCards).DeleteOne(ctx, bson.D{{"token", token}}, opts)
if err != nil {
log.Fatal(err)
}
fmt.Printf("deleted %v documents\n", res.DeletedCount)
return res, nil
}
написал метод , чтоб ыудалял запись в монге по токену.
пишу тест делаю фаинд - а запись там есть. Это как?
а что пишет fmt.printf перед return? err может быть nil, но deletedcount = 0. Значит все прошло успешно, но подходящий документ не найден
deleted 1 documents res = '&{DeletedCount:1}' find = '&{ID:ObjectID("600a870b7121ec4fa291bbb3") Token:6574168716874197 AccumulativeAmountATM:105.56 AccumulativeAmountPOS:56.45 TrxCounterATM:87 TrxCounterPOS:55 DateOfLastAction:2021-01-22 08:04:27.487 +0000 UTC}'
Ну может подходящих записей много. Советую скачать mongodb compass, подконнектиться и смотреть как меняется коллекция после удаления
Обсуждают сегодня