我可能误解了一些东西,但在客户端我发送了一个请求到服务器。类似的东西:
$.post("/resources/remove", {"id": 52024e25b26d39f931000003})
我在服务器上
Resource.remove({_id: request.body.id})
“ID”是正确的,并且使用具有相同参数的Resource.find
将返回我要删除的记录。但是,运行此操作时,它会删除所有 Resource
条记录。 exec(function (err, returnValue)
的返回值是那里的Resource
记录的数量,因此它肯定会删除所有记录。使用Remove.(request.body.id)
做同样的事情。
我是否还需要执行其他操作以确保仅删除具有相应_id
的记录?如果条目无效,为什么要删除所有记录?
答案 0 :(得分:3)
尝试使用Resource.findOneAndRemove
Reference
我从来没有使用过,但这是我使用的,它对我来说非常适合
PostModel.findOne({_id: id}, function (err, result) {
if (err) {
throw err;
}
if (result) {
PostModel.remove({_id: id}, function (err, result) {
if (err) {
throw err;
}
res.json(200, result);
});
}
});