Я пытаюсь использовать возвращенный ниже запрос для отображения товаров и их категорий, только если они появляются в базе данных.Если я удалю @if (! Empty), он выдаст мне ошибку
Undefined Offset:2
Блейд-код:
@foreach($allCompanies as $company)
<div class="row justIn container">
<div class="col-12 text-center" id="{{ $company->company->company }}">{{ $company->company->company }}</div>
</div>
<div class="row">
@if(!empty($products[$company->company_id]))
@foreach($products[$company->company_id] as $product)
<div class="col-6 col-md-3">
<a href="{{ route('viewproduct.show', $product->id) }}"><img src="{{ $product->image }}" class="img-fluid justInProducts" alt=""></a><br>
{{ $product->name }}<br>
@if($product->size)
{{ $product->size }}<br>
@endif
£{{ $product->price }}<br>
<a href="{{ route('viewproduct.show', $product->id) }}" class="btn btn-dark mb-4 btn-sm">View Product</a> <a href="{{ route('products.addToCart', ['id' => $product['id']]) }}" class="btn btn-dark mb-4 btn-sm">Add To Basket</a>
</div>
@endforeach
@endif
</div>
@endforeach
И вот на нем выполняется запрос
$products = Products::where('category_id', $id->id)->get()->groupBy('company_id');
$allCompanies = Products::whereHas('company', function($q) {
$q->where('visible',0);
})->groupBy('company_id')->get();
Как и сейчас, он будет отображать заголовки категорий и продуктов, но я хотел, чтобы категории отображались только при наличии продуктов под ним