MEAN堆棧新手在這裏。我很難理解如何刪除在MEAN中的作品。我使用這個SO Q&A和tutorial作爲指南,但是每當我測試它時,我都會收到一個錯誤,指出數據不能被刪除。有人能告訴我我做錯了什麼嗎?使用MEAN堆棧從MongoDB刪除數據
這裏是我的代碼:
控制器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."});
}
});
}
這就是我對此的理解。它是否正確?
控制器JS得到要刪除的ID,並調用$ HTTP的刪除請求(?),使用所述ID和
/api/products/delete:
。節點服務器看到我所謂的「/ API /產品/刪除:」並請求傳遞到服務器的控制器完成請求。
服務器控制器刪除數據並返回狀態。
我哪裏出錯了?請幫忙。
此外,我看到一些帖子說$resource
比$http
更好。爲什麼?
謝謝。
非常感謝你的詳細解釋!這就是':'代表的。 :)他們從來沒有真正解釋過我發現的任何資源。我根據您的提示更改了代碼,現在他們的工作很完美。謝謝! –