Как отобразить изображения из папки хранения Laravel - PullRequest
1 голос
/ 02 июля 2019

Я пытаюсь извлечь изображения из хранилища в представление, но оно не показывает изображение, в консоли я вижу эту ошибку Failed to load resource: the server responded with a status of 404 (Not Found). Я перепробовал много решений, включая this , но он все еще не работает.

Контроллер

 class productController extends Controller
 {

/**
 * Display a listing of the resource.
 *
 * @return \Illuminate\Http\Response
 */
 public function index(Request $request)
 {
    $userId = $request->user()->id;
    $products = product::where('admin', $userId)->get();
   return view('admin.product.index',compact('products'));
  }

  public function admin()
  {
   $products=product::all();
   return view('admin.product.index',compact('products'));
   }



  public function show($id)
 {
  $product = ProductsPhoto::findOrFail($id);
  return view('productsPhoto.show', compact('product'));

  }
/**
 * Store a newly created resource in storage.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return \Illuminate\Http\Response
 */
  public function store(Request $request) 
  { 

    $product = Product::create($request->all());
    foreach ($request->photos as $photo) {
        $filename = $photo->store('photos');
        ProductsPhoto::create([
            'product_id' => $product->id,
            'filename' => $filename
        ]);
      }

ProductsPhotos.php

  class ProductsPhoto extends Model
  {
  protected $fillable = ['product_id', 'filename'];

   public function product()
   {
    return $this->belongsTo('App\Product');
    }

product.php

protected $table='products';
protected $primaryKey='id';
protected $fillable=['name','price','info','image','stock'];
* ** 1016 1017 * лезвие
 @foreach($products as $product)
     <img src="{{ asset('storage/photos/filename') }}"
 @endforeach

Любая помощь будет оценена.

1 Ответ

0 голосов
/ 02 июля 2019

Выполнить эту команду ремесленника php artisan storage:link. В Blade используйте Фасад для хранения ниже:

 @foreach($products as $product)
     <img src="{{ \Storage::url($products->productPhoto->filename) }}"
 @endforeach

/ * ОБНОВЛЕНИЕ * /

 public function index(Request $request)
 {
    $products = product::where('admin', \Auth::id())->firstOrFail();
   return view('admin.product.index',compact('products'));
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...