【发布时间】:2016-12-31 17:41:11
【问题描述】:
MEAN 堆栈新手在这里。我很难理解删除在 MEAN 中的工作原理。我使用这个SO Q&A 和tutorial 作为指南,但是每当我测试它时,我都会收到一条错误消息,指出无法删除数据。谁能告诉我我做错了什么?
这是我的代码:
控制器 JS
$scope.deleteProduct = function (value, idx) {
var this_id = value._id;
// delete
$http.delete('/api/products/delete:' + this_id)
.success(function (data) {
console.log(data);
})
.error(function (data) {
console.log('Error: ' + data);
})
}
节点服务器
app.delete('/api/products/delete:', productController.delete);
服务器的“控制器”
module.exports.delete = function (req, res) {
Service.remove({
_id: req.params._id
}, function (err, service) {
if (err) {
res.send(err);
}
else {
res.json({message: "Delete successful."});
}
});
}
这就是我的理解。这是正确的吗?
Controller JS获取要删除的id并调用$http的删除请求(?),使用该ID和
/api/products/delete:。Node Server 看到我调用了 '/api/products/delete:' 并将请求传递给 Server's Controller 以完成请求。
服务器的控制器删除数据并返回状态。
我哪里做错了?请帮忙。
另外,我看到一些帖子说$resource 比$http 效果更好。为什么?
谢谢。
【问题讨论】:
标签: javascript node.js mongodb mean-stack