如何在laravel4中为不同的用户分配权限?

时间:2015-08-28 03:47:02

标签: php laravel laravel-4

我已将角色分配给用户,例如teamleader和项目经理。 现在我希望团队领导能够创建团队,项目经理可以管理项目

我的控制器 -

    $roles=User::find($id)->roles()->get();
    $role2=array();
    foreach($roles as $rolesss) {
        $role2[] = $rolesss->name;

    }
    Log::info('coming',$role2);

    if(in_array('teamleader',$role2) &&  in_array('projectmanager',$role2) )
    {
return 'djfdj';}
   elseif(in_array('teamleader',$role2))
    {
        return 'team';
    }
    elseif(in_array('projectmanager',$role2))
{
return 'project';}

现在是我的用户模型

         public function roles()
{
    return $this->belongstoMany('Role','user_roles','user_id', 'role_id');
}

public function hasRole($check)
{
    return in_array($check, array_fetch($this->roles->toArray(), 'name'));
}

1 个答案:

答案 0 :(得分:0)

对于基于权限和角色的工作,有一个名为sentinel的laravel包,它非常有用且易于实现。

github链接是:

https://github.com/cartalyst/sentinel

有关文档,您可以访问以下链接:

https://cartalyst.com/manual/sentinel/2.0