1.composer show spatie/laravel-permission
2.php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider"
3.php artisan config:clear
php artisan cache:clear
php artisan route:clear
php artisan optimize:clear
4.Route::get('/dashboard', function () {
return view('dashboard');
})->middleware(['auth', 'permission:view-dashboard']);
5.in bootstrap/app.php
use Spatie\Permission\Middlewares\RoleMiddleware;
use Spatie\Permission\Middlewares\PermissionMiddleware;
use Spatie\Permission\Middlewares\RoleOrPermissionMiddleware;
use Illuminate\Foundation\Configuration\Middleware;
return Laravel\Folio\Router::boot()
->withMiddleware(function (Middleware $middleware) {
$middleware->alias([
'role' => RoleMiddleware::class,
'permission' => PermissionMiddleware::class,
'role_or_permission' => RoleOrPermissionMiddleware::class,
]);
});