원클릭으로
database-migration
Panduan membuat migration, seeder, dan factory sesuai standar Laravel.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Panduan membuat migration, seeder, dan factory sesuai standar Laravel.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Workflow untuk fitur non-standar seperti Dashboard, Settings, User Management, atau Halaman Khusus.
Panduan refactor khusus Backend (Laravel)
Panduan refactor E2E test per modul menggunakan shared test factories, termasuk pertimbangan refactoring frontend/backend agar testing konsisten.
Panduan refactor khusus Frontend (React SPA)
Panduan membuat unit test, feature test, dan e2e test sesuai pola codebase.
Workflow untuk membuat fitur CRUD kompleks dengan relasi foreign key, filter multi-field, dan komponen frontend terpisah.
| name | Database Migration |
| description | Panduan membuat migration, seeder, dan factory sesuai standar Laravel. |
Gunakan skill ini untuk membuat atau memodifikasi struktur database dengan aman.
PENTING: Selalu gunakan MCP tools ini sebelum membuat perubahan!
| Tool | Fungsi |
|---|---|
mcp_laravel-boost_database-schema | Lihat schema existing (tabel, kolom, FK, index) |
mcp_laravel-boost_search-docs | Cari dokumentasi Laravel migrations |
mcp_laravel-boost_tinker | Verifikasi sample data atau test code snippet |
read_file | Baca file referensi existing |
# Sebelum buat migration, lihat schema existing:
mcp_laravel-boost_database-schema()
# Cari dokumentasi jika ragu:
mcp_laravel-boost_search-docs(queries: ["migration foreign key"])
# Verifikasi struktur tabel setelah migrate:
mcp_laravel-boost_database-schema(summary: true, filter: "products")
Apa yang perlu dilakukan?
│
├── Buat tabel baru ──────────────→ Migration + Model + Factory
├── Tambah kolom ke tabel ────────→ Migration (alter table)
├── Ubah struktur kolom ──────────→ Migration (modify column)
├── Hapus kolom/tabel ────────────→ Migration (drop) ⚠️ DESTRUCTIVE
├── Buat data awal ───────────────→ Seeder
└── Buat test data ───────────────→ Factory
// turbo-all
# Buat migration
./vendor/bin/sail artisan make:migration create_{features}_table
# Buat model dengan migration + factory
./vendor/bin/sail artisan make:model {Feature} -mf
# Run migrations
./vendor/bin/sail artisan migrate
# Rollback last migration
./vendor/bin/sail artisan migrate:rollback
| Tipe | Lokasi | Referensi Pattern |
|---|---|---|
| Migration | database/migrations/ | Ikuti pola *_create_employees_table.php |
| Model | app/Models/ | Ikuti pola Employee.php |
| Factory | database/factories/ | Ikuti pola EmployeeFactory.php |
| Seeder | database/seeders/ | Ikuti pola EmployeeSeeder.php |
TIP: Gunakan
read_fileuntuk baca file referensi, bukan template.
Schema::create('products', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->text('description')->nullable();
$table->decimal('price', 10, 2);
$table->foreignId('category_id')->constrained()->cascadeOnDelete();
$table->timestamps();
$table->index('name');
});
Schema::table('products', function (Blueprint $table) {
$table->string('sku')->after('name')->nullable();
});
Schema::table('products', function (Blueprint $table) {
$table->dropForeign(['category_id']); // Drop FK dulu
$table->dropColumn('category_id');
});
| Action | Syntax |
|---|---|
| Cascade delete | ->cascadeOnDelete() |
| Set null on delete | ->nullOnDelete() |
| Restrict delete | ->restrictOnDelete() |
migrate:fresh (hapus semua tabel)mcp_laravel-boost_database-schema sebelum buat migrationnullable() untuk kolom barumigrate:rollback lalu migrate lagi// turbo-all
# Run migrations
./vendor/bin/sail artisan migrate
# Check migration status
./vendor/bin/sail artisan migrate:status
# Test rollback
./vendor/bin/sail artisan migrate:rollback
./vendor/bin/sail artisan migrate
Setelah migrate, gunakan mcp_laravel-boost_database-schema(summary: true, filter: "{table}") untuk verifikasi struktur tabel.