我正在生成带有蛋糕烘焙实用程序的模型表,我正面临一个奇怪的情况。
我有这些表格:
product(id_product)
guest(id_guest)
product_guest(product, guest, amount)
其中product_guest
表会跟踪客人购买的产品以及购买的产品数量。
现在,通过HABTM关于蛋糕烘焙的关系,我只能指定表product和guest之间的关系,但是没有amount
字段的痕迹。
如何正确映射此情况以检索和添加amount
?
答案 0 :(得分:2)
在您的情况下,HABTM不是正确的关联使用。您应该使用hasMany through关联。
根本的变化是您需要基于product_guest表的第三个模型。
创建这些关系:
答案 1 :(得分:0)
错误的表格结构首先
你应该
guests : id , user_name , password
这是购买产品的客人。这是主表。
products : id , product_name , description
这是您的产品表,其中包含有关描述等产品的详细信息。这是主表。
orders -> id , amount , user_id
此处的订单是一个表格,其中包含购买产品和价格的详细信息。这是主表。
然后一个订单可以有很多项目
orders_products -> order_id , product_id
现在这将包含订单ID以及哪个产品作为外键包含在内。这是包含产品和订单的外键的子表。
此处orders_products是HABTM,产品和订单为
一个订单可以包含多个产品。一个产品可以是多个订单的一部分。它有意义吗?