我尝试了几种方法来删除我的照片,特别是使用fs.unlink
,但它似乎根本不起作用,您可以从下面的图片中看到我将照片保存在assets->img->products
我的代码看起来像这样
router.get("/admin/products/:id/delete", (req, res) => {
Product.findByIdAndRemove(req.params.id, (err, photo) => {
if (err) {
req.flash("error", "deleting photo failed");
return res.render("/admin/products/");
}
fs.unlink(photo.image1, function() {
console.log(photo.image1);
return res.redirect("/admin/products");
});
});
});
我的代码没有从我的文件中删除我的照片有什么问题?
答案 0 :(得分:2)
由于您将相对路径作为第一个参数传递,因此无法删除照片。
photo.image1 = assets / img / products / image1.jpg
尝试传递绝对路径(从机器的根目录)。
fs.unlink("absolute-path-to-assetsParentFolder" + photo.image1, function() {
console.log(photo.image1);
return res.redirect("/admin/products");
});