MEAN堆栈删除

时间:2015-10-27 17:01:20

标签: angularjs node.js mongodb mean-stack

尝试在我的帖子列表中添加删除按钮,这将删除数据库中的条目,但只有在单击按钮时才会显示为空。

我的$ scope

$scope.remove = function(post) {
  posts.remove(post);
}

此功能的链接:

o.remove = function(post) {
    $http({ url: '/posts/' + post._id, 
            method: 'DELETE'                
    }).then(function(res) {
        // Deleted
        console.log(data);
        // Update list
        $http.get("/posts")
            .success(function(data, status, headers, config) {
              console.log(data);                
        });
    }, function(error) {
        console.log(error);
    });

 };

路由器:

router.delete('/posts/:post', function(req, res, next) {
        Post.remove({
            _id : req.params.id
        }, function(err, post) {
            if (err)
                res.send(err);

            Post.find(function(err, post) {
                if (err)
                    res.send(err)
                res.json(post);
            });
        });
    });

按钮

    <span ng-click="remove(post)">
      Delete
    </span>

我的console.log写入null,没有任何内容被删除。非常感谢我能得到的所有帮助,因为我非常困难!

1 个答案:

答案 0 :(得分:0)

你应该:

_id : req.params.post

而不是:

_id : req.params.id

因为路线中有:post个参数:

router.delete('/posts/:post', function(req, res, next) {