我即将在 Laravel (4) 中编写一个小游戏社区的代码,并且在弄清楚如何设置数据库表时遇到了一些麻烦。这是它应该如何工作的:
Users table:
John
Lisa
Stewie
Groups table:
Team red
Team blue
Team green
Roles table:
Superadmin
Admin
Moderator
Demigod
Permissions table: (describing what permissions each role has)
Superadmin (Total control of everything, will only be me and maybe a buddy with this role.)
Admin (create delete edit forums etc + everything a moderator does)
Moderator (delete forum posts, ban users)
Demigod (some other permissions)
一个用户,比如 Stewie,可以在一个或多个团队中。但他在每支球队中扮演着不同的角色。Stewie - 红队 - 管理员 Stewie - 蓝队 - 版主 + 半神
我想知道如何以一种聪明的方式进行设置?首先想到的是 user_group 数据透视表。但是我如何将其与特定于组 + 用户的角色联系起来?我应该做某种三向数据透视表,还是可以用其他方式设计一个不同的表格设置?