猫鼬查找并保存不更新文档
Posted
技术标签:
【中文标题】猫鼬查找并保存不更新文档【英文标题】:mongoose find and save not updating the document 【发布时间】:2017-10-05 05:19:47 【问题描述】:我正在使用猫鼬来查找和修改并保存回集合。 这是我尝试过的:
if(req.body.writer)
MyModel.find(writer: req.body.oldname,function (err, data)
for(var i = 0; i < data.length; i++)
data[i].writer= req.body.newName;
data[i].save()
);
为什么不更新文档? 问题出在哪里? 谢谢
【问题讨论】:
【参考方案1】:尝试更新方法:
if(req.body.writer && req.body.newName)
MyModel.update(
//search documents with old writer
writer : req.body.oldname,
// set writer as newName
$set : writer : req.body.newName ,
"multi": true,
//check for error
function (err)
if(err)
res.status(500).send(err);
else
res.status(200).send('updated successfully..');
);
【讨论】:
这只是更新第一次出现。如何更新所有匹配的文档? 您需要传递 "multi": true 作为第三个参数。我已经更新了答案,请检查。以上是关于猫鼬查找并保存不更新文档的主要内容,如果未能解决你的问题,请参考以下文章