From 3486231739213b071ca25a10524d035782769328 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Wed, 19 Nov 2025 14:50:19 +0700 Subject: [PATCH] feat(migration): update users table schema and add is_active column with enum feat(seeder): create UserSeeder for initial user data population --- .../0001_01_01_000000_create_users_table.php | 11 ++++++--- database/seeders/DatabaseSeeder.php | 8 ++----- database/seeders/UserSeeder.php | 23 +++++++++++++++++++ 3 files changed, 33 insertions(+), 9 deletions(-) create mode 100644 database/seeders/UserSeeder.php diff --git a/database/migrations/0001_01_01_000000_create_users_table.php b/database/migrations/0001_01_01_000000_create_users_table.php index 05fb5d9..3e3f9f0 100644 --- a/database/migrations/0001_01_01_000000_create_users_table.php +++ b/database/migrations/0001_01_01_000000_create_users_table.php @@ -1,5 +1,6 @@ id(); - $table->string('name'); - $table->string('email')->unique(); + $table->string('name', 100); + $table->string('email', 254)->unique(); + $table->string('username', 10)->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); - $table->timestamps(); + $table->enum('is_active', [IsActive::values()])->default(IsActive::ACTIVE)->comment(IsActive::comment()); + $table->timestamp('created_at')->useCurrent(); + $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); + $table->softDeletes(); }); Schema::create('password_reset_tokens', function (Blueprint $table) { diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index 6b901f8..b9c7377 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -2,7 +2,6 @@ namespace Database\Seeders; -use App\Models\User; use Illuminate\Database\Console\Seeds\WithoutModelEvents; use Illuminate\Database\Seeder; @@ -15,11 +14,8 @@ class DatabaseSeeder extends Seeder */ public function run(): void { - // User::factory(10)->create(); - - User::factory()->create([ - 'name' => 'Test User', - 'email' => 'test@example.com', + $this->call([ + UserSeeder::class, ]); } } diff --git a/database/seeders/UserSeeder.php b/database/seeders/UserSeeder.php new file mode 100644 index 0000000..5fc67e1 --- /dev/null +++ b/database/seeders/UserSeeder.php @@ -0,0 +1,23 @@ + 'Yoga Pangestu', + 'email' => 'info.pangestuyoga@gmail.com', + 'username' => 'pangestu', + 'password' => Hash::make(config('auth.password_default')), + ]); + } +}