1

現在、ゲストに「ゲスト」の役割を割り当てて、権限を付与できるようにしようとしています。私は現在、いくつかのミドルウェアの一部である次のコードを持っています。これは間違った場所にあるようです。もっと良い場所があると思います。サービスプロバイダーを使用してみましたが、添付できませんでしたグループ

 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);
                }
            }
        }
    }

ご覧のとおり、これはミドルウェアに非常に固有のものです。理想的には、アプリケーションのどの部分でも使用できるように、可能な限り最初のインスタンスでロールを攻撃したいと考えています。

4

2 に答える 2