【发布时间】:2019-04-20 05:24:18
【问题描述】:
有一个名为order_product 的数据透视表,如下所示:
order_id | product_id | quantity | price
1 2 3 1500
我需要为每个 order_product 添加一个序列号,但这是不可能的,因为有一个 number 列并且每个产品都有自己的序列号。
解决此问题的最佳方法是什么?
像这样向order_product 表添加一个ID 是否是个好主意:
id | order_id | product_id | price
1 6 2 1500
然后像这样创建另一个名为serials 的表?:
id | order_product_id | serial
1 1 6545154
2 1 123
3 1 456
如果没有其他办法,我可以用 Eloquent 之类的 ORM 来实现吗?
【问题讨论】:
-
serial属于每个order_product还是product?
-
@Zartosht 序列号属于每个订单产品,每个售出的产品都有自己的序列号
-
为什么不在 order_product 表中添加一个名为 serial 的额外列?
-
@Zartosht 因为有一个数量字段所以如果数量为2表示这一行代表两个产品,它有两个序列号
-
@Ali 你能告诉我产品型号和系列型号之间的关系是什么吗?
标签: mysql database laravel eloquent pivot