Laravel:尝试从存储中删除图像时出错

时间:2018-04-13 18:14:29

标签: php html laravel

因此,当用户删除我网站上的帖子时,我希望将图像从存储中删除。我有代码,路径应该工作,但由于某种原因,它只返回以下错误:

Symfony \ Component \ Debug \ Exception \ FatalThrowableError (E_ERROR)
Class 'App\Http\Controllers\Storage' not found

为什么要查看存储目录的控制器目录?为什么在显示图像时可以找到图像。

以下是应该删除图像的代码块:

public function getDeletePost($post_id){
    $post = Post::where('id', $post_id)->firstOrFail();

    if($post->cover_image != 'noimage.jpg'){
        // Delete Image
        Storage::delete('/public/cover_images/'.$post->cover_image);
    }

    $post->delete();
    return redirect()->route('dashboard')->with(['message' => 'post deleted']);
}

2 个答案:

答案 0 :(得分:3)

我认为你没有导入Storage课程。您可以在控制器顶部执行此操作:

use Storage;

或者只是这样写:

\Storage::delete('/public/cover_images/'.$post->cover_image);

答案 1 :(得分:1)

在控制器顶部添加use Storage;。 您正在使用外观而不导入其名称空间