Проблема в том, что вы не отправляете правильную вещь в представление. Смотрите эту строку:
$data = (array)$this;
Это означает, что вы конвертируете контроллер в array
и отправляете его в представление. Вы получаете сообщение об ошибке, поскольку вы не можете использовать объектный доступ ->...
на array
, но это еще не все. Исправьте ваш код ниже:
public function detailorders($id){
// Removed print_r() and die(); not needed here, and prevents execution.
$dorder = orderdetail::findOrFail($id); // Changed to findOrFail; will thrown an error if unable to find record.
return view('template/admin/modules/orders/detailorders',compact('dorder'));
}
Затем в вашем файле просмотра просто укажите как:
<tr role="row" class="odd">
<td class="sorting_1">{{$dorder->id}}</td>
<td>{{$dorder->order_id}}</td>
<td>{{$dorder->product_id}}</td>
<td>{{$dorder->price}}</td>
<td>{{$dorder->subtotal}}</td>
<td>{{$dorder->quantity}}</td>
Редактировать: findOrFail($id)
проверяет наличие where id = ?
в вашей таблице orderdetail
. Чтобы это исправить, используйте
$dorder = orderdetail::where("order_id", "=", $id)->firstOrFail();
Это проверит наличие where order_id = ?
в вашей таблице orderdetail
.