diff --git a/database/seeders/AdminUserSeeder.php b/database/seeders/AdminUserSeeder.php new file mode 100644 index 0000000..4bb1feb --- /dev/null +++ b/database/seeders/AdminUserSeeder.php @@ -0,0 +1,38 @@ +first(); + + if ($admin) { + $this->command->info('Admin 帳號已存在,跳過建立。'); + return; + } + + User::create([ + 'username' => 'admin', + 'name' => 'Admin', + 'email' => 'admin@star-cloud.com', + 'password' => bcrypt('password'), + 'role' => 'admin', + ]); + + $this->command->info('Admin 帳號建立成功!'); + } +} diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index 6f16585..238bbec 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -9,16 +9,14 @@ class DatabaseSeeder extends Seeder { /** * Seed the application's database. + * + * 執行全部 Seeder:php artisan db:seed + * 執行單一 Seeder:php artisan db:seed --class=AdminUserSeeder */ public function run(): void { - // 建立管理員帳號 - \App\Models\User::factory()->create([ - 'username' => 'admin', - 'name' => 'Admin', - 'email' => 'admin@star-cloud.com', - 'password' => bcrypt('password'), - 'role' => 'admin', + $this->call([ + AdminUserSeeder::class, ]); } }