Как вытащить данные из красноречивого фильтра в блейд - PullRequest
0 голосов
/ 03 июля 2019

Мне нужно иметь возможность извлекать заголовок категории за пределами a для каждого цикла, но я не знаю, как определить переменную

Я могу сделать это из цикла, когда он уже определен, но затемЯ получаю его на каждой итерации цикла, который мне не нужен.Мой код пока что

@extends('layouts.games')

@section('content')

<h1>{{TITLE TO GO HERE}}</h1>
<div class="row saleGames">
  @foreach($allGames as $game)
  <div class="col-3"><img height="50" src="{{$game->image ? $game->image->file : 'http://placehold.it/400x400'}}" class="buytItems"></td><br>Price £10<br><br><button class="btn btn-success">Add to Basket</button></div>
  @endforeach
</div>
@endsection

Мне нужно заменить TITLE TO GO HERE на заголовок из базы данных, но я не знаю, как определить его для использования вне цикла

  public function show(Categories $category)
    {
      $allGames = Games::where('categories_id', $category->id)->get();      
      return view('games', compact('allGames'));
    }

Ответы [ 2 ]

1 голос
/ 03 июля 2019

добавьте категорию в компактный массив,

public function show(Categories $category)
{
  $allGames = Games::where('categories_id', $category->id)->get();      
  return view('games', compact('allGames','category));
}

, затем в свой клинок

<h1>{{ $category->name}}</h1>
1 голос
/ 03 июля 2019

Измените свой код на следующий код:

public function show(Categories $category)
    {
      $allGames = Games::where('categories_id', $category->id)->get();
      $title = $catgeory->title // this will be name of the field you want to display in your view ;

      return view('games', compact('allGames', 'title'));
    }

Затем в вашем блейд-файле:

@extends('layouts.games')

@section('content')

<h1>{{$title}}</h1>
<div class="row saleGames">
  @foreach($allGames as $game)
  <div class="col-3"><img height="50" src="{{$game->image ? $game->image->file : 'http://placehold.it/400x400'}}" class="buytItems"></td><br>Price £10<br><br><button class="btn btn-success">Add to Basket</button></div>
  @endforeach
</div>
@endsection
...