2017-04-16 49 views
1

我正在用Laravel 5.4構建一家服裝店的api,我有這種情況。我有一個有衣服的衣架。但同樣的作品可以在機架上多次出現。Laravel發生多次關係

rack 
-id 
-description 
product 
-id 
-description 
product_rack 
-id 
-rack_id 
-product_id 

我有一個多對多的關係,因爲可以在很多貨架上進行產品和機架有多個產品。然而,我不確定我如何將產品多次連接到機架上。

像例如ID爲1機架有2次產品5和1個產品3

我可以使用attach()功能,但如果我detach()它釋放所有產品從機架上,而不是一個。

+0

看看Laravel的多對多關係:https://laravel.com/docs/5.4/eloquent-relationships#many-to-many – TurtleTread

+0

嗯..你想同一個產品出現多次在同一個機架?這樣做的目的是什麼...... – TurtleTread

+0

那麼,如果你去商店有一個很大的變化,一件衣服多次出現在機架上。我希望我的API能夠顯示。 –

回答

0

您可以添加一個額外的列描述在特定機架

例如產品數量product_rack表:

rack_id | product_id |計數

1 | 5 | 2
1 | 3 | 1

你可從產品的最終使用count

$product->rack->pivot->count 

,並從機架結束

$rack->product->pivot->count 

閱讀文檔中獲取中間表中的列。

https://laravel.com/docs/5.4/eloquent-relationships#many-to-many

希望這有助於。 :)

+0

謝謝您的回答,我將如何更新計數列? –

+0

我想當你添加或取出物品。 –