2017-01-02 51 views
3

我使用查詢生成器,用於執行查詢到DB像爲:如何在Laravel中加入運算符的結果?

$result = Order::with("product", "images"); 

至於結果我得到的迴應裏面兩個嵌套的對象:

{["product" : [{}], "images" : [{}]]} 

我如何加入這兩個對象之一,即得到如下回應:

{"title" : "Product name", "price" : 3, "images" :{}, "order" : {} } 
+0

訂單和產品,圖像之間的關係是什麼?另外,您確定訂單和圖片之間是否存在關聯,而不是產品和圖片? –

+0

'Order'和'Product'之間的關係是:'Order.product_id = Product.id'和'Product.image = images.id' – Hamama

回答

2

你應該在這裏使用nested eager loading

Order::with('products.images')->first(); 

如果您想要獲取數組或JSON而不是集合,請在集合上使用toArray()toJson()方法。

+1

您必須刪除第一個'products',因爲'products.images'會加載'products'。 – AntoineB

+0

@AntoineB是的,你是對的,編輯。謝謝。 –

+0

在這種情況下,您將獲得對象產品和對象圖像。但我需要加入一個對象產品 – Hamama

相關問題