猿问

mongodb go: 'mongo: no documents in result'

我在我的mongoDB数据库中有一个非常简单的条目:


{"_id":{"$oid":"609b15511a048e03dda05861"},"password":"test_password","answer":"test_answer"}

当我在 Atlas UI 中使用过滤器参数时,我能够提取结果。


滤波器:


{"password": "test_password"}

但是,当我调用数据库时,我不断收到错误mongo: no documents in result


filter := bson.M{"password": "test_password"}

ctx, _ := context.WithTimeout(context.Background(), 10*time.Second)

err := collection.FindOne(ctx, filter).Decode(&result)

if err != nil {

    log.Printf("%v", err)

}

我似乎已正确连接到该集合。有什么想法吗?


蝴蝶刀刀
浏览 1151回答 1
1回答

江户川乱折腾

毕竟,我没有正确连接到数据库。我像这样连接到我的收藏:collection := client.Database("DB_NAME").Collection("COLLECTION_NAME")由于它没有抛出错误,我错误地认为这是正确的。您可以使用以下内容查看您的集合和数据库:databases, _ := client.ListDatabaseNames(ctx, bson.M{})log.Printf("%v", databases)collections, _ := client.Database("DATABASES").ListCollectionNames(ctx, bson.M{})log.Printf("%v", collections)
随时随地看视频慕课网APP

相关分类

Go
我要回答