Arsitektur MVC (Model-View-Controller) berdasarkan studi kasus Task Manager yang baru saja Anda buat. Memahami struktur ini adalah kunci untuk menjadi pengembang Laravel yang mahir.
1. Konsep MVC dalam Studi Kasus Anda
Arsitektur MVC membagi aplikasi menjadi tiga komponen utama agar kode lebih terorganisir dan mudah dikelola.
A. Model (Data & Logika)
File:
app/Models/Task.phpKegunaan: Menghubungkan aplikasi Anda dengan tabel
tasksdi database. Model bertugas mengambil data, menyimpan data baru, atau menghapus data.Dalam Studi Kasus: Saat Anda menulis
Task::all(), Model inilah yang bekerja mengambil semua baris data dari MySQL.
B. View (Tampilan/UI)
File:
resources/views/tasks/index.blade.phpKegunaan: Berisi kode HTML dan CSS. View hanya bertugas menampilkan data yang dikirimkan kepadanya. View tidak boleh tahu bagaimana cara mengambil data dari database.
Dalam Studi Kasus: View menerima daftar tugas dan menampilkannya dalam bentuk list menggunakan Tailwind CSS.
C. Controller (Otak/Penghubung)
File:
app/Http/Controllers/TaskController.phpKegunaan: Menjadi perantara. Controller menerima permintaan dari user (lewat Route), meminta data ke Model, lalu mengirimkan data tersebut ke View.
Dalam Studi Kasus: Saat Anda membuka URL
/tasks, Controller diperintahkan untuk mengambil data tugas dari Model dan menyajikannya ke Viewindex.
2. Struktur File Proyek (Folder yang Kita Gunakan)
Berikut adalah ringkasan folder-folder utama yang terlibat dalam pembuatan aplikasi Task Manager Anda:
3. Alur Kerja (The Flow)
Mari kita simulasikan apa yang terjadi saat Anda me-refresh browser:
Request: Browser meminta halaman
[http://127.0.0.1:8000/tasks](http://127.0.0.1:8000/tasks).Route: File
routes/web.phpmelihat permintaan tersebut dan mengarahkannya keTaskControllerfungsiindex.Controller:
TaskControllermenjalankan perintahTask::all().Model: Model
Taskmengambil data dari tabel MySQL.Controller: Setelah dapat datanya, Controller memanggil View
tasks.indexsambil membawa data$tasks.View: File
index.blade.phpmerender HTML dan menampilkan data tugas yang dibawa tadi.Response: Browser menampilkan halaman web yang sudah cantik.
Mengapa Harus Pakai Struktur Ini?
Rapi: Jika ada kesalahan tampilan, Anda tahu harus buka folder
views. Jika ada kesalahan data, Anda buka folderModels.Skalabilitas: Jika nanti aplikasi Anda bertambah besar (misal: ada fitur User, Kategori, atau Komentar), Anda tinggal menambah Model, View, dan Controller baru tanpa mengganggu kode yang lama.
PERINTAH COMPOSER
Berikut adalah urutan perintah lengkap yang Anda gunakan, mulai dari proses instalasi hingga aplikasi berhasil berjalan di browser:
1. Tahap Instalasi (Composer)
Perintah ini digunakan untuk mengunduh framework Laravel dan semua pustaka pendukungnya.
composer create-project laravel/laravel:^10.0 pelatihan2Kegunaan: Membuat folder proyek baru bernama
pelatihan2dengan Laravel versi 10.
2. Tahap Navigasi Folder
Sebelum menjalankan perintah selanjutnya, Anda harus masuk ke dalam folder proyek yang baru dibuat.
cd pelatihan2Kegunaan: Pindah posisi terminal ke dalam direktori proyek. Jika ini terlewat, perintah
artisantidak akan bisa dijalankan.
3. Tahap Pembuatan Struktur MVC (Artisan)
Perintah ini digunakan untuk membuat komponen-komponen utama aplikasi secara otomatis.
php artisan make:model Task -mKegunaan: Membuat file Model (
Task.php) sekaligus file Migration (-m) untuk membuat tabel di database.
php artisan make:controller TaskControllerKegunaan: Membuat file Controller (
TaskController.php) untuk mengatur logika aplikasi.
4. Tahap Database & Migrasi
Setelah mengatur koneksi database di file .env, gunakan perintah ini untuk mengirim struktur tabel ke MySQL.
php artisan migrateKegunaan: Menjalankan instruksi migrasi (membuat tabel
tasksdan tabel bawaan Laravel lainnya di database).
php artisan migrate:rollback(Opsional)Kegunaan: Membatalkan migrasi terakhir jika ada kesalahan pada struktur tabel.
5. Tahap Uji Coba Data (Tinker)
Digunakan untuk memasukkan data ke database tanpa melalui form web.
php artisan tinkerKegunaan: Membuka konsol interaktif PHP untuk berinteraksi dengan database.
Perintah di dalam Tinker:
App\Models\Task::create(['title' => 'Tugas Baru', 'is_completed' => 0]);
6. Tahap Pembersihan Cache (Troubleshooting)
Sering digunakan jika Anda mengubah file .env atau Route tetapi perubahannya tidak muncul.
php artisan config:clearKegunaan: Menghapus cache konfigurasi.
php artisan route:clearKegunaan: Menghapus cache rute URL.
7. Tahap Menjalankan Aplikasi
Langkah terakhir untuk melihat hasil pekerjaan Anda di browser.
php artisan serveKegunaan: Menjalankan server pengembangan lokal. Setelah ini jalan, Anda bisa membuka
[http://127.0.0.1:8000](http://127.0.0.1:8000)di browser.
Ringkasan Urutan Cepat:
composer create-project...(Instal)cd nama-proyek(Masuk folder)php artisan make:model...(Buat struktur)php artisan migrate(Setup database)php artisan serve(Jalankan)
PERINTAH DATABASE
Berikut adalah urutan perintah dan langkah-langkah pengelolaan database, mulai dari pembuatan di phpMyAdmin hingga proses pengisian data (Insert) di Laravel:
1. Tahap di phpMyAdmin (Persiapan Awal)
Langkah ini dilakukan secara visual melalui browser untuk menyiapkan "rumah" bagi data Anda.
Buka URL:
localhost/phpmyadmin.Buat Database: Klik menu New, ketik nama database (misal:
pelatihan2), lalu klik Create.Pengaturan Koneksi: Di proyek Laravel, buka file
.envdan sesuaikan:Cuplikan kodeDB_DATABASE=pelatihan2 DB_USERNAME=root DB_PASSWORD=
2. Tahap Migration (Membuat Struktur Tabel)
Setelah database dibuat, Anda tidak perlu membuat tabel secara manual di phpMyAdmin. Gunakan perintah Artisan agar struktur tabel tercatat di kode program.
php artisan make:model Task -mPerintah ini membuat Model sekaligus file Migration.
Edit File Migration: Buka file di folder
database/migrations/xxxx_create_tasks_table.phpdan tambahkan kolom:
$table->string('title');
$table->boolean('is_completed')->default(false);
```
* **`php artisan migrate`**
* **Kegunaan:** Menjalankan perintah SQL secara otomatis untuk membuat tabel `tasks` ke dalam database `pelatihan2`.
http://googleusercontent.com/image_content/211
---
## 3. Tahap Insert Data (Memasukkan Data)
Ada tiga cara utama untuk memasukkan data ke dalam tabel yang sudah dibuat:
### A. Melalui Tinker (Uji Coba Cepat)
Paling sering digunakan pengembang untuk mengetes apakah Model sudah berfungsi.
1. Ketik: **`php artisan tinker`**
2. Ketik perintah Eloquent:
```php
App\Models\Task::create(['title' => 'Belajar Database', 'is_completed' => 0]);
```
### B. Melalui Database Seeder (Data Massal/Default)
Digunakan jika Anda ingin mengisi database dengan data awal (dummy) secara otomatis.
1. **`php artisan make:seeder TaskSeeder`**
2. Isi file di `database/seeders/TaskSeeder.php` dengan data.
3. **`php artisan db:seed --class=TaskSeeder`**
### C. Melalui phpMyAdmin (Manual)
Jika ingin memasukkan data secara visual tanpa kode:
1. Pilih tabel `tasks`.
2. Klik tab **Insert** di bagian atas.
3. Isi kolom `title` dan `is_completed`.
4. Klik **Go**.
---
## Ringkasan Logika Database Laravel
| Langkah | Perintah / Alat | Output |
| :--- | :--- | :--- |
| **Persiapan** | phpMyAdmin | Database Kosong |
| **Rencana Tabel** | `make:model -m` | File Migration (Blueprints) |
| **Eksekusi Tabel** | `migrate` | Tabel nyata di MySQL |
| **Isi Data** | `tinker` / `db:seed` | Data masuk ke Baris Tabel |
Dengan mengikuti urutan ini, database Anda akan terstruktur dengan rapi dan sinkron dengan kode Laravel Anda.
https://git-scm.com/install/windows
https://sourceforge.net/projects/xampp/
https://www.apachefriends.org/download_success.html
https://getcomposer.org/download/
http://localhost/phpmyadmin/index.php?route=/table/change&db=pelatihan2&table=tasks
http://127.0.0.1:8000/tasks


Tidak ada komentar:
Posting Komentar