我在从数据库中删除产品后尝试删除文件,但它显示错误,我找不到解决方案。
在null上调用成员函数delete()
public function supprod($id,Request $request)
{
$produits=Produit::find($id);
$produits->delete(); // <-- error on this line
$filename=(string)$document->nom;
Storage::disk('fichier')->delete($filename);
return redirect()->back();
}
这是检查记录此功能$produits=Produit::find($id);
这使用$produits=Produit::where('id',$id)->first();
你应该让Laravel为你做的工作。
将您的操作更改为:
public function supprod(Produit $id, Request $request) {
$filename=(string)$id->nom;
Storage::disk('fichier')->delete($filename);
$id->delete();
return redirect()->back();
}
这将使框架找到合适的模型或如果它不存在则抛出404错误。
有关文档implicit model binding部分的更多信息