【问题标题】:How to fetch multiple Images into blade in Laravel如何在 Laravel 中将多个图像提取到刀片中
【发布时间】:2020-11-16 12:08:24
【问题描述】:

我有一个表格可以上传多张图片。在 Laravel 中,我已将多个图像名称存储到数据库中,我正在使用本地存储 storage/upload 来上传我的图像。

现在我想一一称呼他们。我脑海中的解决方案没有奏效。 我需要逻辑来调用所有图像。

控制器

public function multiStepStore(Request $request)
{
    if($request->hasFile('photos')) {
        $files = $request->file('photos');
        foreach ($files as $file) {
            $filename = $file->getClientOriginalName();
            $extension = $file->getClientOriginalExtension();
            Storage::disk('local')->put($filename,  File::get($file));
            $filepath[] = $filename; // Store all Images into array
            $getAllImages = collect($filepath)->implode(',');
        }
    }
}

刀片

<tr>
 <td>Location</td>
 <td>{{ $row->location}}</td>
</tr>

<tr>
 <td>Images</td>
  <td>
    @foreach( (array) $row->img_path as $img)
       <img src=" asset('storage/uploads/' .{{ $img }}">
    @endforeach
</tr>

输出只是一个损坏的图像缩略图。 如何获取所有图像?

【问题讨论】:

  • 您的 multiStepStore 控制器工作正常吗?
  • @STA 是的,我正在获取所有列值,包括存储所有图像名称的“img_path”。现在我想将所有图像显示到刀片中。
  • 制作 php artisan storage:link 然后 {{ asset('storage/uploads/' . $img) }}
  • 您将图像存储在/storage/uploads 中,这不是public 目录。公共目录是/storage/app/public。现在php artisan storage:link 可以工作了
  • @STA 显示损坏的缩略图。在控制台中,它返回所有存储在链接中的图像名称,如 http:://(webite)/storage/uploads/img1,img2,img3

标签: php laravel laravel-6


【解决方案1】:

您将图像存储在/storage/uploads 中,这不是public 目录。公共目录是/storage/app/public。将所有/storage/uploads 文件移动到/storage/app/public/uploads,然后创建一个符号链接:

php artisan storage:link

像这样改变你的刀片代码:

@php 
    $x = explode (",", $row->img_path);
@endphp
@foreach($x as $key => $val)
     <img src="{{ asset('storage/uploads/' . $val) }}">
@endforeach

【讨论】:

    猜你喜欢
    • 2021-05-15
    • 2019-06-12
    • 2022-07-08
    • 2022-11-02
    • 2021-09-25
    • 2014-12-14
    • 2014-08-09
    • 1970-01-01
    • 2020-06-15
    相关资源
    最近更新 更多