具有多个用户类别的模式数据库

时间:2013-12-13 15:07:30

标签: mysql

我想开始一个项目,学习如何为我未来的应用程序创建一个好的架构的最佳方法。我开始对我的项目有一些疑问,但是现在我真的很想知道如何在这个场景中制作一个好的架构:

我开始看到我有2个主要类别,普通用户和团队。这个“技巧”的工作类似于Facebook,用户可以创建自己的团队,他们可以切换属性并控制他们的团队。

拥有2个不同的个人资料,用户个人资料和团队资料。我需要显示帖子,评论和照片。

所以我的问题是:

我必须为用户创建两种类型的表,为团队创建另一种表吗?或者最好创建一个唯一的表,并且只有一个整数列,以便知道是用户还是管理员?

例如

table users -- user_posts
table admin -- admin_posts

table user --|__ posts // and have a column "type" on where if is 1 is user if is 2 is 
table team --|

2 个答案:

答案 0 :(得分:1)

我会选择第二种方案,让您以后可以进行更灵活的开发。

table users
user_id, password, team_ID, etc

table team
team_id, admin_id (FKEY from user_id), name, description, etc

答案 1 :(得分:0)

根据团队/团队的事情,你应该创建三个表:

  1. 用户
  2. 哪个用户在哪个团队中拥有哪些权限
  3. 对于3,您可以在项目中添加具有已定义规则的枚举...例如管理员,编辑......你说出来。