我有以下架构:
var companySchema = new mongoose.Schema({
_id : ObjectId,
...,
items:[{
_id: ObjectId,
...
fields: {
...
myBool: Boolean
...
}
}]
});
我需要遍历一个更新的猫鼬查询,即一个特定公司的项目的myBool字段。
我的方法(不起作用)是在同一更新查询中使用$ not opeator:
Company.update(
{ "_id": coampanyId, "items._id": itemId },
{
"$set": {
"items.$.fields.myBool": { "$not": "items.$.fields.myBool" }
}
},
function(err,doc) {
callback(err, doc);
}
);