Laravel Mediable-删除媒体和物理文件



使用Laravel Mediable,我正在尝试找出删除单个文件的最佳方法。说我查看父模型时有一个文件列表,然后单击删除图标以提出AJAX请求以删除文件(该请求应删除相应的媒体对象和物理文件...)

这有效:

$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删除文件,因为它的唯一但想知道我缺少什么...

您也必须使用此代码

删除文件

file :: delete('path/to/'.j request-> fileName);

=更新=第二个块上的问题只需要在where子句

末尾添加 -> first()

最新更新