如何在登录后限制不同的用户,以便他们不会访问他们不应该访问的目录?这意味着每个人都应该只访问他们的目录 这是我的登录控制器
protected function sendLoginResponse(Request $request)
{
$request->session()->regenerate();
$this->clearLoginAttempts($request);
foreach ($this->guard()->user()->roles as $role) {
if ($role->name=='Admin') {
return redirect('issuer');
}else if ($role->name=='Approver') {
return redirect('approver');
}else if ($role->name=='Issuer')
{
return redirect('issuer');
}else if ($role->name=='Requester')
{
return redirect('requester');
}
}
}
public function logout()
{
Auth::logout();
Session::flush();
return redirect('login');
}
这是我的用户模型
protected $fillable = [
'name', 'email', 'password','active',
];
protected $hidden = [
'password', 'remember_token',
];
public function roles()
{
return $this->belongsToMany(Role::class,'role_users');
}
这是我的角色模型
protected $fillable = ['name'];
protected $primaryKey = 'id';
public function users()
{
return $this->belongsToMany(User::class, 'role_users');
}
答案 0 :(得分:0)
根据您的代码,我发现您的使用角色与角色相同,使目录成为特定的访问级别。例如,名称访问级别,如低级别,中级别,高级别,然后将每个用户指定为各自的访问级别。根据访问级别隐藏和可见目录。