猿问

怎么定义某些字段的归属模块?

在设计商品模块的时候,有一个需求是某一些商品是不能参加活动的。这个时候设计商品模型的时候就又两种选择:

  • 将限购这个属性放到商品模型上,归商品模块维护

  • 商品模块不管这个限购属性,由活动模块记录限购,维护一份限购商品Id表

个人觉得这两种方式都可以,但是如果把限购这个属性放到商品模型上得话,以后这种特殊属性越来越多的话,会导致商品模型无限膨胀。所以如果由促销来管理这个关系的话,商品模型上就只有一些简单的属性,这个基础服务就会更加的干净。

请问有没有一些经验或者准则可以参考一下?谢谢。


摇曳的蔷薇
浏览 450回答 3
3回答

慕尼黑8549860

一般情况下,建议采用商品和活动分表记录,然后通过一张关系表来建立联系,这样不管从商品找活动还是从活动找商品都会比较方便。对于近期活动需要快速读取的情况,甚至可以针对活动单独建立缓存数据,以提高读取效率。

慕少森

具体情况具体分析,如果商品任何活动都不参加,则直接放在商品表中可矣,但如果某种商品只是某次活动不参加,而别次活动又有可能要参加,则必须另外建立一个商品活动表。或者将商品分类,某次活动某几类商品参与,则需要建立一个活动商品分类表,但也可能这次活动这些分类商品参与,而又要排除某几件特殊商品,还是要分析这些被排除的商品是否有共性?如果有共性,则加分类标签,如果完全是凭店主个人喜好随机摘除,则再加一个排除表。大概就是这么一个思路。
随时随地看视频慕课网APP

相关分类

Java
我要回答