Я пытаюсь отобразить данные из базы данных на основе зарегистрированного пользователя в laravel.
Если есть данные для одного пользователя, все работает хорошо, но если другой пользователь добавляет данные в таблицу, я получаю ошибку. Невозможно использовать объект типа stdClass в качестве массива
Вот как я получаю данные в контроллере
public function viewBookings() {
$allProducts = Booking::get()->where('client', Auth::user()->name);
$products = json_decode(json_encode($allProducts));
foreach ($products as $key => $val) {
$service_name = Service::where(['id' => $val->service])->first();
$service_fee = Charge::where(['id' => $val->charge])->first();
$service_status = Status::where(['id' => $val->status])->first();
$products[$key]->service_name = $service_name->name;
$products[$key]->service_fee = $service_fee->total;
$products[$key]->service_status = $service_status->name;
}
return view('client.booking.view_bookings')->with(compact('products'));
}
Ошибка указана в этой строке
$products[$key]->service_name = $service_name->name;
Я проверил его, удалив данные для другого пользователя, и все работает нормально, но если я возвращаю данные других пользователей в таблицу, я получаю эту ошибку