我正在寻找方便的方法来检查对象是否已经存在于集合中.现在,我找到的唯一方法是
type result interface{}
var res result
err := col.Find(bson.M{"title": "title1"}).One(&res)
if err != nil {
if err.Error() == "not found" {
log.Println("No such document")
} else {
log.Println("err occured", err)
}
}
Run Code Online (Sandbox Code Playgroud)
我不想创建变量res,如果对象存在,它可能是非常重的文档,有很多字段.我希望有另一种方式,一些Check()函数将只返回bool值.基本上我只需要知道已存储在集合中的对象,我不需要自己
小智 9
count, err = collection.Find(bson.M{field: value}).Count()
Run Code Online (Sandbox Code Playgroud)
你必须使用$ exists
语法:{field:{$ exists:}}
更多细节
http://docs.mongodb.org/manual/reference/operator/query/exists/