想象一个电子商务平台,其工作方式如下:
- A
Package
, 由Items
和 其他的混合物组成Packages
。 - An
Order
由 和 的混合物Items
组成Packages
。 - 用户可以选择一些物品和一些包裹来订购,但也可以继续从包裹中删除一些物品作为该订单的一部分,这不会影响原始包裹。
- A
Package
将来可能会更改,但Order
必须显示当时作为包裹的一部分实际订购的内容。
这是一个例子:
Package_A: [Large_Knife, Cutting_Board]
Package_B: [Cheese, Package_A]
Order_1: [Wine, Small_Knife, (Package_B - Large_Knife)]
现在让我们说Package_A
更改:
Package_A: [Large_Knife, Cork_Screw]
这意味着新的Package_B
有一个Cork_Screw
而不是Cutting_Board
。
当用户查看他的旧订单时,他应该看到他实际订购的内容。
Order_1: [Wine, Small_Knife, Package_B([Cheese, Cutting_Board])]
Large_Knife
如果这样更容易建模,则无需存储/显示已删除的内容。
很想听听关于如何建模的想法。
谢谢。