我目前正在尝试为所有访客分配“访客”角色,以便他们可以拥有权限。我目前有以下代码,这是一些中间件的一部分,这似乎是错误的地方,我会假设有一个更好的地方,我曾尝试使用服务提供商,但我无法附加组如何为访客分配角色和权限
if($this->auth->guest())
{
$user = new User();
$user->username = 'Guest';
$role = Role::where('name', '=', 'guest')
->with('perms')
->first();
$user->perms = new Collection();
$user->perms->add($role);
$perms = explode('|', $permissions);
foreach($user->perms as $p) {
foreach($p->perms as $pp) {
foreach($perms as $perm) {
if($perm === $pp->name)
return $next($request);
}
}
}
}
正如你可以看到这是非常具体的中间件,理想的情况是我想要攻击的第一个可能的情况下的作用,因此它可以在应用程序