【发布时间】:2017-07-25 19:51:20
【问题描述】:
我正在使用 express.js 服务器。我正在尝试使用对象数组更新 mongodb 集合中的现有文档使用 mongoose(每个对象都有 _id 属性,其值对应于每个文档 _id。)
一种方法是遍历数组并执行findByIdAndUpdate()
for(var i=0; i < expenseListToEdit.length; i++) {
var expense = expenseListToEdit[i];
Expense.findByIdAndUpdate(expense._id, expense, function(err, model) {
if (err) {
console.log('Error occurred while editing expense');
}
console.log('model: ' + util.inspect(model));
});
}
但是这样我将不得不处理异步场景,并且必须检查所有迭代的数据库查询何时完成,然后只将响应从服务器发送回客户端。
mongoose 中是否有其他方法可以一次性编辑/修改对象数组,然后调用回调?
注意*- 每个数组对象都有 _id 存在,它与文档 _id 值匹配。
【问题讨论】:
标签: node.js mongodb express mongoose