我正在使用passport.js将我的用户存储到我的mongodb中。用户对象看起来像这样
{
"_id" : ObjectId("545ac4930acf4b5394cbc244"),
"local" : {
"password" : [encrypted password],
"email" : "john@domain.com",
"level" : "super user",
},
"__v" : 0
}
我正在尝试显示属于“超级用户”组的所有用户。
我发现这很困难,因为我的数据位于对象中的两个级别。
答案 0 :(得分:0)
使用点符号如下:
db.users.find({"local.level" : "super user"})
要仅返回某些字段,find有一个可选的投影参数。对于密码和电子邮件,您可以执行以下操作:
db.users.find({"local.level" : "super user"}, {"local.password":1, "local.email":1, "_id":0})
注意:除非在投影中标记为0,否则始终返回_id。