我有一个用户文档集合,每个文档都有一个嵌入式客户端。数组中的每个对象都有一个clientID。
我想在clients数组中使用一个client来检索用户文档,该client具有与传递的clientID匹配的clientID。
但是我遇到的所有示例都只是检索对象而不是返回文档。我想使用mgo库做到这一点
var results []model.Clients
err := db.C("users").Find(nil).Select(bson.M{"clients": bson.M{"$elemMatch":q }}).All(&results)
以上仅返回一个客户数组。但是我想要一个用户数组。
[
{
"userID": "1",clients: [
{
"clientID": "12","data": {},"customers": [
"customerID": "0123","data": {
}
]
},{
"clientID": "123","data": {
}
]
}
]
},{
"userID": "2",{
"clientID": "13","data": {
}
]
}
]
}
]