【问题标题】:how to fetch image from storage folder to blade in laravel 8?如何在 laravel 8 中从存储文件夹中获取图像到刀片?
【发布时间】:2021-09-25 22:44:46
【问题描述】:

我在显示存储在 laravel 存储文件夹中的图像时遇到错误。 所以这是我在存储文件夹中存储图像的代码:

    public function store(Request $request)
{

    $data = $request->all();
    // dd($request->Image);

    $User =  Auth::user()->id;
    
    $rules = array(
       'postname' => 'required' ,
       'description' =>'required',
       'Image' =>  'required|image|mimes:jpeg,png,jpg|max:8192',
    );

    $validate=Validator::make($data,$rules);
    
    if ($validate->fails()) {
        return redirect()->back()->withInput()->withErrors($validate);
    }
    else{
       
       $path =   Storage::disk('local')->put('public',$request->file('Image'));
      
       $form_data = array(
           'title' => $data['postname'],
           'description' => $data['description'],
           'Image'  => $path,
           'user_id' => $User,
       );
    //    dd($form_data);
       $Posts = Post::create($form_data);
       $Message = "successfully added";
       return redirect('/Admin/Posts')->with('success',$Message);
    }   
}

这是用于检索图像的刀片文件:

              <img class="card-img-bottom" src="{{ Storage::url($Posts->Image)}}" width="200" height="450">

这里是 config/filesystems.php 中的链接

'local' => [
        'driver' => 'local',
        'root' => storage_path('app'),
    ],

    'public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('APP_URL').'/storage',
        'visibility' => 'public',
    ],

这是我存储数据的表的视图: enter image description here

它一直显示在 storage/app/images 文件夹中,但是当我试图从 public/storage 取回它时,它们不是照片。 我已经做了那个的存储链接?? 现在如何从数据库中获取它??

这是它的查看方法:

      public function index(Request $request)
{
    $Post = Post::get();
    // dd($Post);
    $User = User::get();
    return view('Posts.index',compact('Post'));
}

这是在浏览器中检查图像:

   <img src="/storage/1dTAYokONfbLXS74vEcus665uBhPBzVDAe53QMkL.jpg" width="200" height="450" class="card-img-bottom">

这里是没有在刀片上渲染的图像 ui: enter image description here

并且来自 laravel 文档:我已经完成了

      php artisan storage:link

这是它的存储文件夹: enter image description here

这里是公用文件夹,其子文件夹称为存储文件夹,用户可以在其中查看文件以在刀片中获取.. : enter image description here

有什么帮助吗?怎么解决??

【问题讨论】:

    标签: php database laravel storage laravel-blade


    【解决方案1】:

    错误已解决, 我所做的是,按照这个stackoverflow答案:enter link description here 我的链接又恢复了。 我刚刚从公用文件夹中删除了存储文件夹,然后再次运行命令

    php artisan storage:link

    它解决了我的错误

    【讨论】:

      猜你喜欢
      • 2021-03-07
      • 2019-11-13
      • 2019-06-12
      • 1970-01-01
      • 1970-01-01
      • 2021-09-21
      • 1970-01-01
      • 1970-01-01
      • 2022-01-09
      相关资源
      最近更新 更多