我在某些控制器的__construct中使用此行
$this->middleware('auth');
此结果是,每个未登录的用户都将被重定向到登录页面。当然可以,但是有问题。
我有两组用户。在数据库中,我有一列称为“角色”,它是布尔值。 0表示基本用户,1表示管理员。我该如何处理,仅允许管理员进入某些控制器?我真的不知道该怎么做。
答案 0 :(得分:0)
您可以将内容传递给中间件,例如
$this->middleware('auth:1');
现在在中间件中,您可以检查经过身份验证的用户是否具有您通过的角色(在示例中为1)。如果他们没有您所需要的角色,则可以将其重定向到登录屏幕,也可以根据需要进行处理。
答案 1 :(得分:0)
您可以使用以下代码获取经过身份验证的用户,然后编写自定义逻辑。
if(Auth::user()->role==0)
{
//you are basic user
}
esle if(Auth->user()->role==1)
{
//you are admin
}
您也可以为这种类型的工作确定条件。