0

我可能误解了一些东西,但在客户端我有一个请求发送到服务器。就像是:

$.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删除对应的记录?如果条目无效,为什么要删除所有记录?

4

1 回答 1

3

Try using Resource.findOneAndRemove Reference

I've never used that but this is what I use and it works perfectly for me

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);
        });
    }
});
于 2013-08-07T13:51:12.507 回答