Laravel 5.3雄辩的关系-用户,角色,页面和权限


Laravel 5.3 Eloquent Relationship - User, Role, Pages and Permissions

我正在为我的应用程序开发ACL,使用4个表:

所有表和关系

我可以得到 的关系
  1. users and roles:

    $user = App'Models'User::find( Auth::user()->id );
    //
    foreach( $user->roles as $user_role )
    ...
    
  2. 角色和页面:

    $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包来获取