我们正在添加功能以允许产品构建。
例如,用户可以配置不同的属性,这些属性可以是普通值(高度、颜色等)或现有产品(可以为一件家具选择旋钮)。
我现在正在构建数据库设计,我正在寻找建议。我想出的是以下内容。
产品- 现有产品表例如:ProductA
ParentProducts - idParentProduct例如:ProductB
ParentProduct_Attributes - idParentProduct、idAttribute、类型(产品/值)例如:高度、旋钮
ParentProduct_Attribute_Values - idAttribute、idValue、值例如:10"
ParentProduct_Attribute_ChildProducts - idAttribute、idChildProduct、类型(注册产品/子产品)例如:ChildProductA、ProductA
ChildProducts - idChildProduct
这似乎是获取实际属性值的很多步骤。
例如,我有一件家具 ProductB。ProductB 有高度和旋钮。高度选项为 10"、12"(值),旋钮选项为 ChildProductA、ProductA(产品)——每个选项来自不同的表。ChildProductA 是子产品,而 ProductA 是常规产品,所以还是两个单独的表。
对此有任何意见吗?不同的想法?
希望我很清楚。
谢谢你。