Logo Catatan Kader Logo Catatan Kader
  • Beranda
Beranda
Backend Engineering / Laravel

Menguasai Routing, Controller & Blade Template

Routing and Views Banner

Modul 03

"Menghubungkan Logika Bisnis dengan Tampilan Visual"

Maret 29, 2026
25 Menit Eksekusi

Di modul ini kita akan mempraktikkan konsep MVC (Model-View-Controller). Kita sudah punya Model di modul sebelumnya, sekarang kita buat Controller sebagai pemroses, View sebagai tampilan, dan Route sebagai pintu masuknya.

Alur Kerjanya: User mengetik URL -> Route menangkap URL tersebut -> Route memanggil Controller -> Controller mengambil data dari Model -> Controller mengirim data ke View (Blade) -> Tampil di Browser User.

Live Execution

LAB: Menyusun Tampilan Pertama

01 Membuat Controller

Buka terminal Anda, pastikan berada di dalam folder project, lalu buat sebuah controller baru bernama PostController (atau sesuaikan dengan nama model Anda sebelumnya):

php artisan make:controller PostController

File akan terbuat di app/Http/Controllers/PostController.php. Mari kita buat satu fungsi untuk menampilkan halaman utama:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Post; // Import Model Anda

class PostController extends Controller
{
    public function index()
    {
        // Mengambil semua data dari database (nanti kita bahas lebih dalam)
        $posts = Post::all();
        
        // Melempar data ke file view bernama 'posts.index'
        return view('posts.index', compact('posts'));
    }
}

02 Mengatur Routing

Sekarang, beritahu Laravel URL apa yang harus diakses untuk memanggil fungsi di atas. Buka file routes/web.php dan tambahkan kode ini:

use App\Http\Controllers\PostController;

// Jika user mengakses /posts, jalankan fungsi 'index' di PostController
Route::get('/posts', [PostController::class, 'index']);

03 Meracik View (Blade Template)

Langkah terakhir, buat file tampilannya. Di dalam folder resources/views/, buat folder baru bernama posts, lalu di dalamnya buat file bernama index.blade.php:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Data Posts</title>
</head>
<body>
    <h1>Halaman Daftar Post</h1>
    
    <ul>
        {{-- Ini cara kita melakukan looping data dari Controller di Blade --}}
        @foreach ($posts as $post)
            <li>{{ $post->title }}</li>
        @endforeach
    </ul>
</body>
</html>

Sekarang coba buka http://localhost:8000/posts di browser Anda. Anda akan melihat halaman HTML yang dirender oleh Laravel!

Kader Note (Blade & Keamanan):

Sintaks kumis ganda {{ $variabel }} di Blade bukan sekadar untuk me-*print* data. Ia secara otomatis menjalankan fungsi PHP htmlspecialchars(). Artinya, aplikasi Anda sudah aman dari serangan XSS (Cross-Site Scripting) tanpa perlu konfigurasi tambahan!

Modul 2: Migration & Model Modul 4: Form & Create Data

Catatan Kader

"Controller itu ibarat pelayan restoran. Dia mencatat pesanan (Route), mengambil makanan di dapur (Model), dan menghidangkannya cantik ke meja pelanggan (View)."
- Abdul Kader

Lanjut ke Materi

M4

Form & Create Data

HTTP POST Request
Catatan Kader Catatan Kader

Catatan ini dikelola untuk keperluan dokumentasi pribadi, pengembangan kemampuan analisis logika, serta standarisasi implementasi sistem teknologi.

© 2026 Catatan Kader. Deployment Active.