2017-08-31 87 views
1

我在我的數據庫中的兩個表訂單的OrderItems和Order表有一到用的OrderItems一對多的關係..每個訂單可以有很多items..now我需要獲取所有有效訂單與他們來自OrderItems表的項目。例如,如果我有2個活動訂單,那麼我想要兩個訂單項。我的意思是我希望他們合併,所以在我看來,我可以通過訂單循環,然後順序項目。關係將兩個表中的數據

這是我現在就是檢索

$user_id = Auth::User()->id; 

    $Orders = Order::where([['id_email', '=', $user_id],['paid', '=', 1],])->get(); 

    $items = Order::where([['id_email', '=', $user_id],['paid', '=', 1],])->orderitems; 

不過這樣一來爲了沒有在它裏面的物品。

回答

0

你不需要任何東西結合起來,你可以簡單地得到訂單:

$orders = Order::where('id_email',$user_id)->where('paid',1)->get(); 

然後通過他們循環,讓每一個人的項目:

foreach($orders as $order){ 
    $order->orderitems(); 
} 

注:orderitems()方法應該在你的模型中定義如下:

public function orderitems() 
{ 
    return $this->hasMany('OrderItem'); 
} 

希望這有助於。