javascript - 无法删除 mongodb 条目

标签 javascript node.js mongodb express mongoose

我正在使用 node.js/express/mongoose/mongodb 创建一个博客应用程序。我正在创建一个删除路径,这样我就可以从我的管理面板中删除帖子。我也在使用方法覆盖来删除。每当我按下我创建的删除帖子的按钮时,我都会遇到一条错误消息,提示无法删除博客/(此处为博客名称)。不确定为什么它不起作用,我们将不胜感激任何帮助。

这里是删除路由代码

//DELETE BLOG ROUTE
app.delete("/blogs/:slug", function(req, res){
  //DESTROY BLOG
  Blog.findOneAndRemove({ slug: req.params.slug}, function(err){
      if(err){
          res.redirect("/admin");
      } else {
          res.redirect("/admin");
      }
  })
});

这是我要在我的管理面板上删除的按钮

<div class="d-flex justify-content-between">
                                    <a href="/blogs/<%= blog.slug %>" class="btn btn-primary">View Post</a>
                                    <a href="/blogs/<%= blog.slug%>/edit" class="btn btn-success">Edit Post</a>
                                    <form action="/blogs/<%= blog.slug %>?_method=DELETE" method="POST">
                                        <button class="btn btn-danger"><i class="far fa-trash-alt"></i> Post</button>
                                    </form>
                                </div>

最佳答案

使用 blog._slug 而不是 blog.slug. 因为,mongoose 将 "id" 提取为 collections._id

关于javascript - 无法删除 mongodb 条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54226851/

相关文章:

node.js - 尝试通过 axios 发送带有另一个参数的 formData

javascript - 使用 node.js 读取 express.js 中的参数的正确语法是什么

javascript - Dynamo 数据库类型转换错误 ValidationException : A value provided cannot be converted into a number

javascript - Mongoose "this.model is not a function"

ruby-on-rails - 没有为带有 Mongoid 的意见生成的方法

javascript - 将用户输入推送到数组

javascript - 通过 [innerHTML] 显示 <my-component>

javascript - CSS 动画 onClick

php - 使用 XAMPP 和 php 5.3 ext 在 Mac 上安装 Mongodb

javascript - Reactjs:如何确保用户不会修改 POST 请求的响应