Target class [admin] does not exist.

I got error Target class [admin] does not exist while using admin middleware to authenticate admin users because I did not use the admin middleware 'admin' => 'App\Http\Middleware\Admin', in app\Http\Kernel.php file. Hope it will help you to find the solution for you

Answers 1
  • Create Admin middleware to authenticate admin users

    //1. Create middleware to authenticate admin users using php artisan command</span></p>
    php artisan make:middleware Admin
    
    //2. Edit middleware Admin.php
    //app\Http\Middleware\Admin.php</strong></p>
    public function handle($request, Closure $next)
    {
        if (Auth::check() && Auth::user()->user_type == 'admin') 
        {
            return $next($request);
        }
        
        else {
            return redirect('/');
        }
    }
    
    //3. <span style="font-weight: 400;">Add it to the routeMiddleware array in your kernel file
    //app/http/Kernel.php
    protected $routeMiddleware = [
        'admin' => 'App\Http\Middleware\Admin',
    ];
      
    //4. <span style="font-weight: 400;">Use Admin middleware to Route group
    //routes\web.php
    Route::middleware(['admin'])->group(function () {
        Route::get('admin/dashboard', '[email protected]')->name('admin.dashboard');
    });
    
    0
  • Back to code snippet queries related laravel