我正在使用Confide (v3.2)和Entrust(v1.2) Frozennode Administrator。在配置文件中,我需要设置一个选项,它将返回true / false,具体取决于用户是否经过身份验证。
/**
* The permission option is the highest-level authentication check that lets you define a closure that should return true if the current user
* is allowed to view the admin section. Any "falsey" response will send the user back to the 'login_path' defined below.
*
* @type closure
*/
'permission'=> function()
{
return Auth::check();
},
它使用默认的Laravel Auth:check();我使用confide Confide对用户进行身份验证,但它只是验证任何用户都经过身份验证,我需要确保他们具有Admin角色才能使用Administrator。我正在使用Entrust作为角色,并希望得到相同的。我只在Entrust的文档中看到使用
$user->hasRole("Admin");
但我知道这不起作用,因为$ user未定义。我该怎么做?
答案 0 :(得分:0)
我对您使用的软件包不熟悉,但如果您可以使用Auth::check()
,则可以使用Auth::user()->hasRole('Admin')
来获取当前用户的状态并从那里开始。