1
我用laravel授权在我的代码,如图所示的文档中定义在我的服务提供商的方法之前:如何检查Gate :: before方法是否被使用?
public function before($user, $ability)
{
if ($user->email == '[email protected]') {
return true;
}
}
有时候,我需要知道,如果支票被拦截。因此,我不想在不同的地方检查邮件(或超级用户的任何其他条件),我想检查是否使用了这种拦截方法。我的意思是不是一次又一次地在不同的地方使用它(如果电子邮件是平等的)。我只想设置这个超级管理条件一次(在服务提供商中),然后在需要时检查它。喜欢的东西:
\Gate::isIntercepted
第一非常感谢。我是laravel新手。你能详细解释一下吗? – Skeletor
当我使用“返回$ this->允许('superadmin')”我得到了一个错误。调用未定义的方法[allow]。 – Skeletor
@Skeletor - 你必须使用['HandlesAuthorization'](https://github.com/laravel/framework/blob/5.2/src/Illuminate/Auth/Access/HandlesAuthorization.php)特性。 –