我有以下架构:
var companySchema = new mongoose.Schema({
_id : ObjectId,
...,
items:[{
_id: ObjectId,
...
fields: {
...
myBool: Boolean
...
}
}]
});
我需要获取一个特定公司(按ID)的给定项目(按ID)的myBool密钥的值。
我的方法(不起作用)
Company.find(
{ "_id": coampanyId, "items._id": itemId },
{
"$elemMatch": {
"items.$.fields.myBool"
}
},
function(err,doc) {
callback(err, doc);
}
);
我不知道$ elemmatch是否在这里正确使用...也许在这种情况下可以使用更好的运算符。我只需要myBool键中的值即可。