Day 2 — Routing & Konsep MVC
Fase: 1 — Fundamental Laravel | Minggu: 1 | Hari: Selasa
🎯 Tujuan Hari Ini
Peserta memahami cara kerja Routing di Laravel dan mengerti alur data dalam arsitektur MVC (Model - View - Controller).
📋 Task Wajib
1. Baca & Pahami Konsep MVC (30 Menit)
Sebelum coding, baca dan catat di buku:
M — Model
Bagian yang berhubungan dengan Database. Model merepresentasikan satu tabel di database. Contoh: Model
User→ tabelusers.
V — View
Bagian tampilan yang dilihat pengguna (HTML/Blade). View tidak boleh punya logika bisnis yang berat.
C — Controller
Bagian "otak" atau perantara. Controller menerima request dari Route, mengambil data dari Model, lalu mengirimkannya ke View.
Alur Kerja:
Browser (Request URL)
↓
routes/web.php ← "URL ini dihandle oleh siapa?"
↓
Controller ← "Proses logika di sini"
↓
Model (opsional) ← "Ambil data dari database"
↓
View (Blade) ← "Tampilkan ke pengguna"
↓
Browser (Response)2. Buat Route Dasar di routes/web.php
Buka file routes/web.php. Tambahkan route berikut:
<?php
use Illuminate\Support\Facades\Route;
// Route halaman utama (sudah ada)
Route::get('/', function () {
return view('welcome');
});
// Route baru: Halaman Tentang Kami
Route::get('/tentang', function () {
return view('tentang');
});
// Route baru: Halaman dengan data dinamis
Route::get('/profil/{nama}', function ($nama) {
return "Halo, selamat datang " . $nama . "!";
});3. Buat View untuk Halaman Tentang
Buat file baru: resources/views/tentang.blade.php
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Tentang Kami</title>
</head>
<body>
<h1>Tentang Program Magang</h1>
<p>Program magang ini bertujuan untuk mempersiapkan siswa SMK RPL menjadi web developer profesional.</p>
<a href="/">← Kembali ke Home</a>
</body>
</html>4. Uji Semua Route
Buka browser dan akses URL berikut satu per satu:
| URL | Yang Diharapkan |
|---|---|
http://127.0.0.1:8000/ | Halaman Welcome |
http://127.0.0.1:8000/tentang | Halaman Tentang Kami |
http://127.0.0.1:8000/profil/Budi | Tampil teks: "Halo, selamat datang Budi!" |
http://127.0.0.1:8000/profil/Sari | Tampil teks: "Halo, selamat datang Sari!" |
5. Tambahkan Route dengan Method POST (Teori)
Tambahkan ini di routes/web.php (tapi belum perlu diuji via browser, hanya untuk dipahami):
// POST Route: menerima data dari Form
Route::post('/kirim-data', function () {
return "Data berhasil diterima!";
});Catat perbedaannya:
Route::get()→ diketik langsung di browser (URL bar)Route::post()→ hanya dikirim melalui HTML Form (method="POST")
📝 Laporan ke Mentor
📌 LAPORAN HARIAN — Day 2
Nama : [Nama Lengkap]
Role : [Role Kamu]
✅ Yang saya kerjakan hari ini:
- [ ] Memahami konsep MVC dan alurnya
- [ ] Membuat route /tentang dan halaman tentang.blade.php
- [ ] Membuat route /profil/{nama} dan mengujinya
- [ ] Memahami perbedaan GET vs POST
📸 Screenshot Wajib:
1. Browser membuka /tentang dengan tampilan halaman
2. Browser membuka /profil/[nama kamu] dengan output teks dinamis
🧠 Apa yang saya pelajari hari ini (min. 3 kalimat):
[Tulis pemahaman kamu tentang MVC dan Routing dengan kata-katamu sendiri]
❓ Kendala / Pertanyaan:
[Tulis jika ada]⚠️ Yang Sering Error di Day 2
- 404 Not Found → Cek ejaan nama route di
web.php, pastikan tidak ada typo. - View [tentang] not found → Pastikan nama file
tentang.blade.php(harus ada.blade.php, bukan.phpsaja). - Lupa jalankan
php artisan serve→ Pastikan server masih berjalan di terminal.
Catatan Mentor
Pastikan peserta benar-benar menggambar alur MVC secara manual di buku tulis. Pemahaman visual tentang "siapa yang ngomong ke siapa" sangat penting sebelum masuk ke Controller.