У меня есть три таблицы order_product, таблица пользователей и заказов, все они связаны друг с другом и работают нормально (как и ожидалось).Я хочу зациклить заказы, а не OrderProduct, а также отображать их в представлении.До сих пор это цикл OrderProduct вместо Order, как я могу зациклить ордера и отобразить их в представлении?
Вот код.
Blade view
@foreach ($orders as $order)
<div>{{ presentPrice($order->billing_total) }}</div>
@endforeach
@foreach ($order->productInfo as $product)
<div>{{ presentPrice($product->price) }}</div>
@endforeach
Пользователь.php
public function sellerOrders()
{
return $this->hasMany(OrderProduct::class, 'seller_id');
}
OrderProduct.php
public function productInfo()
{
return $this->belongsTo('App\Product');
}
public function orderInfo()
{
return $this->belongsTo(Order::class, 'order_id');
}
Order.php
public function user()
{
return $this->belongsTo('App\User', 'seller_id');
}
public function products()
{
return $this->belongsToMany('App\Product')->withPivot('quantity','total','Subtotal');
}
Контроллер
$orders = Auth::user()->sellerOrders()->with('productInfo','orderInfo')->get();
Когда я dd ($заказы) показывает это
Collection {#306 ▼
#items: array:2 [▼
0 => OrderProduct {#300 ▶}
1 => OrderProduct {#301 ▶}
]
}