0

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 などのユーザーは、1 つ以上のチームに所属することができます。しかし、彼は各チームで異なる役割を果たしています。Stewie - チームレッド - 管理者 Stewie - チームブルー - モデレーター + デミゴッド

どうすればこれをスマートに設定できるのだろうか?まず頭に浮かぶのは、user_group ピボット テーブルです。しかし、それをグループ + ユーザーに固有のロールにリンクするにはどうすればよいでしょうか? ある種の 3 ウェイ ピボット テーブルを作成する必要がありますか、それとも別のテーブル設定で別の方法で設計できますか?

4

1 に答える 1