I am trying to seed Admin data into Db. I am assigning 'admin' role to user created and adding permissions to that 'role'.
I am using UUID in this project instead of id
When Seeding showing error
There is no permission named `f6bc4ae5-f08c-4c9c-8d2b-c7ced151a1dd` for guard `web`. at vendor/spatie/laravel-permission/src/Exceptions/PermissionDoesNotExist.php:11
7▕ class PermissionDoesNotExist extends InvalidArgumentException
8▕ {
9▕ public static function create(string $permissionName, string $guardName = '')
10▕ {
➜ 11▕ return new static("There is no permission named {$permissionName} for guard {$guardName}.");
12▕ }
13▕
14▕ public static function withId(int $permissionId, string $guardName = '')
15▕ {
7 vendor frames
8 database/seeders/CreateAdminUserSeeder.php:33
Spatie\Permission\Models\Role::syncPermissions()
+22 vendor frames
31 artisan:35
Illuminate\Foundation\Console\Kernel::handle()
My code
{
$user = User::create([
'fname' => 'Super',
'lname' => 'Admin',
'email' => '[email protected]',
'username' => 'Superadmin',
'password' => Hash::make('mypassword'),
'user_type' => 'admin'
]);
$role = Role::create(['name' => 'admin']);
$permissions = Permission::pluck('id', 'id')->all();
$role->syncPermissions($permissions);
$user->assignRole([$role->id]);
}