【发布时间】:2013-06-24 20:19:26
【问题描述】:
我正在创建一个简单的应用程序,其中用户通过 OAuth 系统登录,并将他们的用户 ID 存储在会话中。
我的数据库有 3 个表:用户、组和页面
- 一个用户可以属于多个组
- 一个组可以有很多用户
- 一个页面可以有多个组
所以基本上在我的设置区域:
- 可以将用户分配到组
- 可以将组添加到页面以允许访问
然后我可以使用用户 ID 来查找他们所在的组,然后选择他们有权访问的页面 ID。然而,这种方法似乎很冗长,我认为会涉及很多循环(另外,我想我会得到许多相同的页面 ID 回来?)。
我的解释的草图:
http://i.imgur.com/oFVsniH.png
我确实觉得有一种更好的方法可以实现这一点 - 使用一个“数据透视”表和 3 个表......类似于:
http://i.imgur.com/IZfhZO1.jpg
如果有人能对什么是最好的,以及我的关系 (M-t-M) 是否正确提供一些见解,那就太棒了。
仅供参考:在 Laravel 4 上构建它
谢谢!
【问题讨论】: