我用来检查用户是否是具有中间件的管理员但是5.3不可能。我之前使用过这段代码:
if(Auth::guest()) //If the user is just a guest
{
return redirect("/");
}
if(Auth::user()->isAdmin == 1) //If the user is logged in and he is the Admin
{
return $next($request);
}
else //If the user is not the admin he can't see this page
{
return redirect("/");
}
}
目前我已经尝试了以下但没有运气。任何人都可以指出我正确的方向,我们可以检查用户是管理员还是普通用户?
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if ($request){
if ($request->user()->role == 'Admin'){
return "yes";
}
}
return $next($request);
}
答案 0 :(得分:0)
您只有一个=
。您必须使用==
(或更严格地使用===
)。
答案 1 :(得分:0)
'='运算符为变量赋值例如。但是,'=='将某些东西与另一个东西进行比较。
在这段代码中:
{% capture handle}{{ color }}{% endcapture %}
您正在访问“$ request”对象并从中提取用户角色。您打算使用字符串'Admin'评估返回的'$ request'对象,但是,您不是在评估,而是要分配它。
解决此问题:
{% case handle %}...
使用'=='运算符将给定值与您提供的静态字符串进行比较。