【问题标题】:Why the length of a collection schema doesn't change after deleting the data in mongodb collection using mongoose?为什么使用 mongoose 删除 mongodb 集合中的数据后,集合模式的长度不会改变?
【发布时间】:2018-06-29 14:12:45
【问题描述】:

我有一个名为“Project”的架构,当我在 app.js 中删除它的数据时,架构的长度保持不变。

我在以下路径中删除它:

router.get("/myprojects/:id/remove", function(req, res){
Project.findByIdAndRemove(req.params.id, function(err){
    if(err){
        console.log(err);
        }else{
      res.redirect("/myprojects");   
    }
});

});

但是当我在另一个页面中获取项目的长度时,即使删除所有内容后,长度也不会改变。

<%= user.projects.length %>

附:我已经删除了 Mongo 中的整个架构,但长度仍然显示相同的数字!!

【问题讨论】:

  • 我已经更新了我的答案
  • 删除后必须刷新页面

标签: javascript node.js mongodb mongoose


【解决方案1】:

你最好像下面这样尝试

router.get("/myprojects/:id/remove", function (req, res) {
    let Project = require('./path/to/Project.js');
    Project.remove({ "_id": req.params.id }).exec(function (err, RemoveStatus) {
        if (err) {
            console.log(err);
        } else {
            console.log("Remove Status---->", RemoveStatus);
            res.redirect("/myprojects");
        }
    });
});

它一直对我有用。

【讨论】:

    猜你喜欢
    • 2017-05-22
    • 2012-10-31
    • 1970-01-01
    • 2020-11-29
    • 2010-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    相关资源
    最近更新 更多