首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为Laravel 5添加多个角色委托基于角色的权限

为Laravel 5添加多个角色委托基于角色的权限
EN

Stack Overflow用户
提问于 2016-09-08 10:20:52
回答 1查看 1.5K关注 0票数 1

我只是增加了对Laravel项目的委托,我可以创建角色,创建权限,attachPermission,assignRole。

现在,我想将多个权限附加到一个角色上,例如,我向superAdmin角色添加了创建用户、编辑用户、删除用户、更新用户的权限。

代码语言:javascript
运行
复制
public function attachPermission(Request $request){
        $role = Role::where('name', '=', $request->input('role'))->first();
        $permission = Permission::where('name', '=', $request->input('name'))->first();
        foreach ($permission as $pers){
            $role->attachPermissions($pers);
        }
            return response()->json("done");
    }

这段代码获得了最后的权限,这是我用Postman测试的后端。

那么什么是最好的为什么这么做呢?谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-08 14:06:33

首先检索希望分配给角色的权限:

代码语言:javascript
运行
复制
$permissionNames = ['name1', 'name2', 'name3'];

$permissions = Permission::whereIn('name', $permissionNames)->get();

然后,您可以将$permissions集合传递给attachPermissions()方法,该方法接受一组有说服力的模型:

代码语言:javascript
运行
复制
$role->attachPermissions($permissions);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39388399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档