我在循环中通过_id
查找文档并更新每个文档中的布尔值:
db.items.findById(key, function(error, item) {
item.flags.cake = false;
item.update(function(error, zzz) {
if(error) return next(error);
console.log('output ',zzz);
});
});
但文件不会更新。 item
的猫鼬模式:
flags: {
cake:Boolean
}
答案 0 :(得分:1)
使用 save()
方法,它会使用一个回调来接收您可以使用的三个参数:
1)err
如果发生错误
2)item
这是保存的项目
3)当文档成功保存到MongoDB时,numAffected
将为1,否则为0。
Items.findById(key, function(error, item) {
item.flags.cake = false;
item.save(function (err, item, numAffected) {
if (err) console.log(err)
console.log('output ', item);
});
});
作为流量控制的额外衡量标准,save将返回Promise。
item.save().then(function(item) {
console.log('output ', item);
});