使用Laravel 5.4上传图片并在前端显示

11 浏览
0 Comments

使用Laravel 5.4上传图片并在前端显示

我正在使用Laravel 5.4。我想要在我的博客中上传图片。

所以我已经将图片上传到storage/app/public/upload文件夹中,像这样。

$request->file('file')->storeAs('upload', $fileName);

图片上传正确。但是我的问题是在博客前端显示图片。

我想要像下面这样显示图片:

  

它添加了图片路径http://127.0.0.1:3000/storage/app/public/upload/man.png

但是图片仍然不可见。

0
0 Comments

问题:在Laravel 5.4中上传图片并在前端显示的问题的原因和解决方法

原因:问题的原因是在Laravel 5.4中,上传的图片存储在storage目录中,而在前端显示图片时,需要使用正确的路径。

解决方法:下面是解决方法的代码示例:

$path = storage_path();

更多信息请参考:[https://laravel.com/docs/5.4/helpers#method-storage-path](https://laravel.com/docs/5.4/helpers#method-storage-path)

0
0 Comments

问题的原因是在Laravel 5.4中,如果要上传图片并直接在前端显示图片,需要指定磁盘为public,并创建一个符号链接将storage/app/public文件夹链接到public/storage文件夹。

解决方法是在上传图片时,使用$request->file('file')->storeAs('upload', $fileName, 'public');来将图片保存到public磁盘中的upload文件夹下。然后通过运行php artisan storage:link命令来创建一个符号链接,将storage/app/public文件夹链接到public/storage文件夹。最后,在前端中使用<img src="{{ asset('storage/upload/' . $fileName) }}" />来显示图片。

这样就可以通过URL直接显示上传的图片了。

0