Route Parameter & Controller
Penjelasan
Route bisa menerima parameter dinamis lewat kurung kurawal di URL, mis. {id}. Untuk logika yang lebih kompleks, sebaiknya dipindah dari closure ke Controller — class terpisah yang dibuat lewat artisan make:controller supaya kode lebih terorganisir dan bisa dites.
Contoh Konsep
<?php
// routes/web.php
use App\Http\Controllers\ProdukController;
Route::get('/produk/{id}', [ProdukController::class, 'show']);
// app/Http/Controllers/ProdukController.php
namespace App\Http\Controllers;
class ProdukController extends Controller
{
public function show($id)
{
return "Menampilkan produk dengan id: {$id}";
}
}
Praktikum
Buat controller ArtikelController lewat php artisan make:controller ArtikelController. Tambahkan method show($slug) yang mengembalikan teks "Artikel: {$slug}". Daftarkan route GET /artikel/{slug} yang mengarah ke method itu.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Perintah php artisan make:controller NamaController otomatis membuat file di app/Http/Controllers/ dengan boilerplate class yang benar — hindari membuat file controller manual supaya namespace dan struktur dasarnya selalu konsisten.