在 golang mongodb 中过滤

Rie*_*ana 4 go mongodb

目前我正在学习使用 golang 和 mongodb 创建restful api。其实我是初学者。我使用mongodb-go-driver,当我们想使用find()函数时,我学会了使用过滤器。但我有一些我不明白。filter := bson.M{"_id": "abcd"}和之间有什么区别filter := bson.M{{"_id": "abcd"}}?谢谢

sim*_*gix 7

参考源码,https://github.com/mongodb/mongo-go-driver/blob/master/bson/primitive/primitive.go

bson.D,内部是primitive.D,这是[]primitive.E,这是一个structbson.M,内部是primitive.M,也就是map[string]interface{}。您将键/值放入bson.M但在bson.D.

最好使用 2 个参数来解释它,例如搜索a = 1 and b = 2。您的语法将是:bson.M{"a": 1, "b": 2}bson.D{{"a": 1}, {"b": 2}}