我正在使用Yii框架处理应用程序,因此它的MVC风格。我有一个记录类型“人”,其中包含有关成员资格的信息。会员有两种类型:成人和孩子们。与孩子们一起,我们知道他们的年龄,他们分为年龄组。年龄组具有名称(例如“8& Under”)。例如,John Smith&简史密斯有两个孩子吉米史密斯和简妮史密斯。 Janey想要做一个足球项目,所以我们需要知道她的年龄并把她放在一个年龄段。吉米正在做艺术与娱乐工艺品所以我们不需要知道他的年龄因为他的计划没有按年龄划分。我们不要求成年人的年龄。
所以问题是:我对如何存储它有一些选择。我可以:
我知道我可以做其中任何一项工作。但我欢迎有关哪种方法更受欢迎以及原因的建议!
答案 0 :(得分:0)
对于未来扩展的可能性(您可能想要创建,删除和修改年龄组),我建议您使用包含开始年龄,上限年龄和描述的年龄组表。您可以将开始年龄保留为空以表示“最多n”/“n”和“较低”组,反之亦然。主键由起始年龄和上年龄组成(复合键。)
然后,在“活动”表中,您需要强制引用年龄组表(即使只是'null / null'或'所有年龄'记录。)这样您就可以创建活动年龄组 - 8岁以下足球,12至14岁足球,所有年龄段的手工艺品,18岁及以上的艺术品等。