我正在制作一个需要成为多商店解决方案的电子商务解决方案。在建立产品及其功能之间的关联时,我被严重卡住了。由于它是一个多商店解决方案,我需要每个产品的动态功能可能性。我想出了三个实体:Product、FeatureKind 和 FeatureValue。
- FeatureKind 具有基本特征名称,如Size、Color、Style等。还具有与 FeatureValue 实体的 M:M 连接。
- FeatureValue 显然包含 FeatureKind 的值,例如Small、Medium、Green、Red、Blue、Full-Sleeved等。
- 产品实体通过 M:M 关联连接到 FeatureKind。
我在这种类型的结构中遇到了一些问题:
- 如果我有一个只有 Small size的 Product 怎么办,它也不应该在选项中显示 Medium 。如果一个产品只有绿色,它不应该同时显示红色和绿色,等等。
- 其次,如果我的产品只有小号绿色和大号红色怎么办?这将如何解决?
我确定我需要同时改变我的结构和架构,幸运的是该项目在 Symfony2 中,我只需要制作产品包。
我很乐意在这里发布实体,但我的问题是概念而不是代码。如果您需要查看它,只需发表评论,我将编辑问题。