Свойство [id] не существует в этом экземпляре коллекции в laravel - PullRequest
0 голосов
/ 04 мая 2020

сохранить запрос в массиве и вызвать результат на странице представления. Свойство [id] не существует в этой коллекции

в контроллере

foreach($carvalue as $row){
               $products[]=DB::table('products')->where('id',$row['product_id'] )->get();
           }

и передать переменную products для просмотра. на странице и распечатайте значение, например

 foreach($products as $prod){ 
        if($prod->id==$rows['product_id']){
        //code
        }
    }

, покажите ошибку, а i dd ($ produts) в результате получите

    array:2 [▼
  0 => Illuminate\Support\Collection {#491 ▼
    #items: array:1 [▼
      0 => {#503 ▼
        +"id": "130"
        +"title": "Rfdfd"
        +"sku": "vbff"
        +"sub_title": "RC10 Matte Graphite"

      }
    ]
  }
  1 => Illuminate\Support\Collection {#505 ▶}
]

. Зачем показывать ошибку этого типа и как ее решить?

1 Ответ

2 голосов
/ 04 мая 2020

В вашем запросе замените get() на first()

$products[]=DB::table('products')->where('id',$row['product_id'] )->first();

ИЛИ

ссылаться на первый (и единственный) $products как $products[0], чтобы он получил id от ПЕРВОГО (и только в вашем случае) продукта

 foreach($products[0] as $prod){ 
        if($prod->id==$rows['product_id']){
        //code
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...