mongodb go:`mongo:结果中没有文档`

mongodb go:`mongo:结果中没有文档`,mongodb,go,mongo-go,mongo-go-driver,Mongodb,Go,Mongo Go,Mongo Go Driver,我的mongoDB数据库中有一个非常简单的条目: {"_id":{"$oid":"609b15511a048e03dda05861"},"password":"test_password","answer":"test_answer"} 当我在Atlas用户界面中使用过滤器参数时,我能够调出结果 过滤器: {"password": &q

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

{"_id":{"$oid":"609b15511a048e03dda05861"},"password":"test_password","answer":"test_answer"}
当我在Atlas用户界面中使用过滤器参数时,我能够调出结果

过滤器:

{"password": "test_password"}
然而,当我调用数据库时,我不断得到错误
mongo:result中没有文档

filter:=bson.M{“密码”:“测试密码”}
ctx,:=context.WithTimeout(context.Background(),10*time.Second)
错误:=collection.FindOne(ctx,filter).Decode(&result)
如果出错!=零{
log.Printf(“%v”,err)
}

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

毕竟我没有正确连接到数据库

我是这样连接到我的收藏的:

collection := client.Database("DB_NAME").Collection("COLLECTION_NAME")
由于它没有抛出错误,我错误地认为这是正确的。您可以使用以下内容查看您的集合和数据库:

databases,\:=client.ListDatabaseNames(ctx,bson.M{})
log.Printf(“%v”,数据库)
collections,\:=client.Database(“DATABASES”).ListCollectionNames(ctx,bson.M{})
log.Printf(“%v”,集合)

您发布的代码应该有效,问题出在其他地方(我们不知道)。测试是否可以使用空筛选器获取其他(所有)文档。
结果的定义是什么?另外,使用
ctx.TODO()
尝试查找。通常,最好使用
bson.D
来定义查询过滤器(bson.M不能保证条目的顺序-与多个过滤条件相关)。
result
被定义为
type result struct{Password string
json:“Password”`Answer string
json:“Answer
}
。我将尝试使用
ctx.TODO()`空筛选器似乎无法获取任何内容。也许我根本没有连接?