新手问题 有个模型关联的问题!!!

shanzhen123 · 2017年09月08日 · 最后由 shanzhen123 回复于 2017年09月09日 · 1497 次阅读

我有一个 order 表和一个 product 还有个 package 表,order 和 product 是多对多的关系,order 表和 package 表也是多对多的关系,那么问题来了! package 表和 product 表也是多对多关系,但是他俩的关系是基于 order 这个表,package 和 product 这个是应该是怎样模型关联呢

你这个很类似顾客点餐,把 package 当成特殊菜品好了

@fxg 你说的这个不理解,我意思是说订单和商品是多对多,包裹和订单是一对多,包裹和商品是多对多的关系 但是他俩的关系是基于订单的

@fxg 多对多关系都是使用 through 关联中间表,那你说的特殊菜品是用什么关键字创建的?

我记得太多的多对多对多 应该是你的数据库的设计上有点问题了。。可以稍微调整下 个人见解

order has_many order_items
order_item has_one product
order has_many packages
package has_many package_items
package_item has_one product

以上是常见的表结构,不知道你的是怎样的,order 和 products 一般是一对多,到 packages 也是一对多,然后 package 到 products 也是一对多。

可以加一张中间表,字段是 order_id product_id package_id

shanzhen123 回复

是我理解错了。

看您的描述,这是取决于你的应用场景吧

我就感觉还是这个人说的靠谱😊 😊 😊 @zjyzxun

shanzhen123 关闭了讨论。 09月12日 17:47
需要 登录 后方可回复, 如果你还没有账号请 注册新账号