我的问题可能与之前在这里提出的问题相呼应: How to design a User Object Model using MS Roles & Membership,但我又问了一遍,因为还没有好的答案,而且我的问题是针对数据模型设计的反正:
所以无论如何,在我的应用程序中,有用户和组。一个用户可以属于许多组,当然一个组可以包含许多用户。现在的问题是,我们只知道几个基本组:用户、访客和管理员。将来,可能会有 can-do-X、can-do-Y 组,并且可能会更多或不超过管理员、用户和访客。所以我很想采取简单的方法。以下是我对这些方法的看法:
如果我打算有一个简单的用户表和一个角色表以及另一个模拟多对多关系的表,它似乎有点过度设计。如果我理解正确,这将被视为规范化方法。相反,如果我在 User 表中放入以下列,如 IsAdmin、IsGuest、CanDoX、CanDoY 等,那么这将是非规范化的。
我希望在复杂性和灵活性、时间和空间等之间取得平衡。请提出建议。