39 lines
921 B
PHP
39 lines
921 B
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Models\User;
|
|
use Illuminate\Database\Seeder;
|
|
use Spatie\Permission\Models\Permission;
|
|
use Spatie\Permission\Models\Role;
|
|
|
|
class AdminAccessSeeder extends Seeder
|
|
{
|
|
/**
|
|
* Seed the application's admin access control data.
|
|
*/
|
|
public function run(): void
|
|
{
|
|
$permission = Permission::query()->firstOrCreate([
|
|
'name' => 'config.view_roles',
|
|
'guard_name' => 'sanctum',
|
|
]);
|
|
|
|
$role = Role::query()->firstOrCreate([
|
|
'name' => 'administrator',
|
|
'guard_name' => 'sanctum',
|
|
]);
|
|
|
|
$role->givePermissionTo($permission);
|
|
|
|
$adminUser = User::query()->updateOrCreate(
|
|
['email' => 'admin@admin.com'],
|
|
[
|
|
'name' => 'Admin User',
|
|
'password' => 'password',
|
|
]
|
|
);
|
|
|
|
$adminUser->assignRole($role);
|
|
}
|
|
} |