Свойство [категории] не существует в этом экземпляре коллекции. (Представление: D: \ xampp \ htdocs \ olshop \ resources \ views \ backend \ product \ index.blade. php) - PullRequest
0 голосов
/ 25 апреля 2020

это моя модель

//relation from model products to model categorys
public function categorys()
{
    return $this->belongsTo('App\Category');
}

это мой контроллер

 public function index()
{
    //controller buat manggil foreachnya
    $data['title'] ='Product';
    $data['page'] = 'Semua Product';
    $data['products'] = Product::all();
    return view('backend.product.index', $data);
}

** это мой **

                @foreach($products->categorys as $key => $value)
                <tr>
                    <!-- view bladenya  -->
                    <td>{{$key+1}}</td>
                    <td>{{$value->category_id->category}}</td>
                    <td>{{$value->product}}</td>

Я пытаюсь использовать $ products -> $ categoryorys, но все пошло не так

Ответы [ 2 ]

0 голосов
/ 25 апреля 2020

Вам необходимо изменить код, как показано ниже:

Удалите дублирующую функцию из модели categorys() и измените имя существующей функции с помощью public function categories()

В контроллере измените свой строка, как показано ниже:

return view('backend.product.index')->with($data);

В вашем блейд-файле вы можете получить к нему доступ, как показано ниже:

@foreach($products->categories as $category)
  // Now You can access categories for each product here
@endforeach
0 голосов
/ 25 апреля 2020

Сначала необходимо выполнить foreach l oop для продуктов, а затем для каждого отдельного продукта выполнить foreach l oop для категорий. Средства:

@foreach($products as $product)
...
     @foreach($product->categories as $category)
        //You have list of categories for each product here
     @endforeach
...
@endforeach
...