我正在用Laravel 5.4为服装店建造一个api,我有这种情况。我有一个衣架上有衣服。但是同一块可以在机架上多次出现。
rack
-id
-description
product
-id
-description
product_rack
-id
-rack_id
-product_id
我有很多关系,因为产品可能出现在许多机架上,而机架有多种产品。但是,我不确定如何将产品多次连接到机架上。
例如,ID为1的Rack有2次产品5和1次产品3。
我可以使用attach()
功能,但如果我detach()
它会从机架而不是机架中释放所有产品。
答案 0 :(得分:0)
您可以在product_rack表中添加一个额外的列,描述特定机架中的产品数量
示例:
rack_id | product_id |数
1 | 5 | 2
1 | 3 | 1
您可以使用产品结束
来检索计数(defgeneric caesar (text n)
(:method ((text string) n)
;; if we're given a string just turn it into a list, then recurse
;; on the list & turn it back to a string (of the same type, hence
;; TYPE-OF).
(coerce (caesar (coerce text 'list) n) (type-of text))))
(defmethod caesar ((text null) n)
;; termination
'())
(defmethod caesar ((text list) n)
;; The recursive level (note this has various issues which are in
;; the original code & not addressed here
(cons (code-char (+ n (char-code (first text))))
(caesar (rest text) n)))
从机架端
$product->rack->pivot->count
阅读文档中的检索中间表列。
https://laravel.com/docs/5.4/eloquent-relationships#many-to-many
希望这会有所帮助。 :)