使用Laravel Mediable,我试图找出删除单个文件的最佳方法。当我查看父模型时,请说出文件列表,然后单击删除图标以发出删除文件的ajax请求(应删除相应的Media对象和物理文件... )
这有效:
$path_parts = pathinfo($request->filename);
$attachment = Media::where('directory', $folder)
->where('filename', $path_parts['filename'])
->where('extension', $path_parts['extension'])
->first();
$attachment->delete();
但这只会删除数据库行而不删除物理文件本身:
$attachment = Media::where('id', $request->fileid);
$attachment->delete();
我更喜欢通过ID删除文件,因为它的独特之处,但我想知道我错过了什么...
答案 0 :(得分:0)
您还必须使用此代码
删除该文件文件::删除('路径/到/' $请求 - >文件名);
=更新= 第二个块的问题只需要在where子句
的末尾添加 - > first()