我为我的客户提出了以下架构。这里有什么特别是订单行项目。我应该使用继承吗?我很确定这个网站只允许您订购课程、课程和礼品卡,仅此而已
对于任何反馈,我们都表示感谢
我为我的客户提出了以下架构。这里有什么特别是订单行项目。我应该使用继承吗?我很确定这个网站只允许您订购课程、课程和礼品卡,仅此而已
对于任何反馈,我们都表示感谢
只是我对设计的想法:
您有可能的购买对象的 和 表,并Courses
包含Lessons
每个表的 ID。但如果客户购买 a和 a ,它们应该在订单中显示为 2 行。另外,如果您的客户想要交易更多物品,您会怎么做?GiftCards
OrderLines
Lesson
GiftCard
因此,我认为重新设计这部分可能会更好,如下所示:
OrderLines
重命名为OrderItems
;ItemType
3 行的表格:Courses
, Lessons
, GiftCards
;Items
带有(ItemId, ItemType, Title, Price, LanguageCode, SortOrder, etc.)
字段的表。这样,不仅可以添加评论,还可Lessons
以为所有可能的项目添加评论。
您必须想出保留详细信息字段的首选方式Items
。现在Courses
并Lessons
共享很多字段,因此将它们全部移动到新Items
表中可能是合理的,因为这些字段似乎也适用于GiftCards
。如果你有一些特定的细节,比如 for GiftCards
,你可以添加特定的表,比如GiftCardItems
withItems.id
和一组不与其他Item
类型共享的特殊字段。
一个小提示:我会分成Users
几个表,因为我想这个表将包含客户和支持的东西。这意味着该表可能会变大(取决于预期的客户数量)。当表的行数增加时,在单个表中维护这么多字段可能会出现问题。
我同意马特的观点——没有要求就很难说出任何事情。
如果不了解客户的要求,真的很难说。一切看起来都不错,但如果没有客户的需求文档,我真的无法判断它是否包含客户想要的东西。