Tutorial Laravel: Belajar Konsep Dasar MVC pada Laravel
Laravel adalah salah satu framework PHP yang paling populer saat ini. Salah satu alasan kepopulerannya adalah penerapan konsep MVC (Model-View-Controller) yang mempermudah pengembangan aplikasi web secara terstruktur dan terorganisir. Artikel ini akan membahas konsep dasar MVC pada Laravel, lengkap dengan penjelasan dan contoh implementasi.
Daftar isi
1. Apa Itu MVC?
MVC adalah singkatan dari Model-View-Controller, sebuah arsitektur desain yang memisahkan logika aplikasi menjadi tiga komponen utama:
- Model: Bertanggung jawab untuk mengelola data dan logika bisnis.
- View: Bagian yang menangani tampilan atau antarmuka pengguna.
- Controller: Menghubungkan Model dan View, serta menangani logika aplikasi.
2. Konsep MVC pada Laravel
Laravel menerapkan konsep MVC untuk mempermudah pengembangan aplikasi web. Berikut adalah penjelasan tiap komponen MVC pada Laravel:
Model
Model adalah komponen yang bertugas mengelola data. Di Laravel, model biasanya mewakili tabel di database. Model digunakan untuk operasi CRUD (Create, Read, Update, Delete).
View
View adalah komponen yang bertugas menampilkan data ke pengguna. Laravel menggunakan Blade sebagai engine templating-nya, yang mempermudah pengelolaan tampilan.
Controller
Controller adalah komponen yang bertindak sebagai penghubung antara Model dan View. Controller menerima input dari pengguna, memprosesnya, dan mengembalikan data ke View.
3. Struktur Folder MVC pada Laravel
Laravel memiliki struktur folder yang terorganisir untuk mendukung konsep MVC:
- app/Models/: Tempat untuk menyimpan file model.
- resources/views/: Tempat untuk menyimpan file view (Blade templates).
- app/Http/Controllers/: Tempat untuk menyimpan file controller.
4. Langkah Implementasi MVC di Laravel
1. Membuat Model
php artisan make:model Post -m
Kode di atas akan membuat file model Post
dan migration untuk tabelnya. Edit file migration di database/migrations/
untuk menambahkan kolom:
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('content');
$table->timestamps();
});
Lalu jalankan migrasi:
php artisan migrate
2. Membuat Controller
Buat controller menggunakan perintah:
php artisan make:controller PostController
Edit file PostController
untuk mengambil data dari model dan meneruskannya ke view:
namespace App\Http\Controllers;
use App\Models\Post;
class PostController extends Controller
{
public function index()
{
$posts = Post::all();
return view('posts.index', compact('posts'));
}
}
3. Membuat View
Buat file view di resources/views/posts/index.blade.php
:
<!DOCTYPE html>
<html>
<head>
<title>Daftar Post</title>
</head>
<body>
<h1>Daftar Post</h1>
<ul>
@foreach($posts as $post)
<li>{{ $post->title }}: {{ $post->content }}</li>
@endforeach
</ul>
</body>
</html>
Tambahkan route di routes/web.php
:
use App\Http\Controllers\PostController;
Route::get('/posts', [PostController::class, 'index']);
5. Kesimpulan
Laravel mempermudah implementasi MVC dengan menyediakan struktur folder yang jelas dan berbagai alat bantu. Dengan memahami konsep dasar MVC, Anda dapat mengembangkan aplikasi yang lebih terstruktur, terorganisir, dan mudah untuk di-maintain.
Semoga tutorial ini bermanfaat dan membantu Anda memahami konsep MVC pada Laravel. Selamat mencoba! 🚀
0 Comments