我正在为我的应用程序开发ACL,使用4个表:
所有表和关系
我可以得到 的关系users and roles:
$user = App'Models'User::find( Auth::user()->id ); // foreach( $user->roles as $user_role ) ...
角色和页面:
$roles = App'Models'Role::find( $user_role->id ); // foreach( $roles->pages as $role_page ) ...
但是我在最后一部分卡住了,这是获得用户可以访问的页面的权限。我不知道怎么做。
我想我没有把自己说清楚。
我真正需要的是,获得用户可以访问的页面的权限。
的例子:
用户1 - Mike,角色1 - Admin,可以访问页面1 - Home, 2 - Post和3 - Dashboard,现在我需要列出每个页面的权限..
你能帮我写代码吗?
谢谢,对不起,我的英语不好
我感谢你可以从用户那里得到这样的页面:
$user = App'Models'User::find( Auth::user()->id );
//
foreach( $user->roles as $user_role ) {
$user_pages = $user_role->pages;
//...
}
看一下这部分文档,也许会对你有所帮助:https://laravel.com/docs/5.3/eloquent-relationships#has-many-through
如果我没理解错的话,您是在列出用户可以访问的页面
你如何获得那些页面的权限?
你看到桌子的图片了吗?
谢谢!
您可以使用 space/laravel-permission包来获取