0% menganggap dokumen ini bermanfaat (0 suara)
14 tayangan6 halaman

Modul Praktik - Koneksi Database Dengan Eloquent Untuk Collection Pada Laravel

Modul ini mengajarkan cara melakukan koneksi database menggunakan Eloquent ORM di Laravel dan memanipulasi data dengan Collection. Peserta akan belajar langkah-langkah mulai dari konfigurasi database, migrasi, hingga penggunaan Eloquent untuk mengambil dan memanipulasi data. Di akhir modul, peserta diharapkan dapat menampilkan data di view dan memahami metode collection yang lebih kompleks.

Diunggah oleh

Diaz Pitaloka
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
14 tayangan6 halaman

Modul Praktik - Koneksi Database Dengan Eloquent Untuk Collection Pada Laravel

Modul ini mengajarkan cara melakukan koneksi database menggunakan Eloquent ORM di Laravel dan memanipulasi data dengan Collection. Peserta akan belajar langkah-langkah mulai dari konfigurasi database, migrasi, hingga penggunaan Eloquent untuk mengambil dan memanipulasi data. Di akhir modul, peserta diharapkan dapat menampilkan data di view dan memahami metode collection yang lebih kompleks.

Diunggah oleh

Diaz Pitaloka
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 6

Modul Praktik: Koneksi Database dengan Eloquent untuk Collection

pada Laravel
Pada modul ini, kita akan belajar bagaimana melakukan koneksi database menggunakan
Eloquent ORM pada Laravel dan memanipulasi data yang diambil dalam bentuk
Collection. Modul ini cocok untuk pemula yang ingin memahami cara menggunakan
Eloquent dan mengelola data dengan Collection di Laravel.

Tujuan:
1. Memahami cara melakukan koneksi database di Laravel.
2. Memahami penggunaan Eloquent ORM untuk mengambil data dari database.
3. Mempraktikkan penggunaan Eloquent Collection untuk memanipulasi data.

Prasyarat:
● Laravel sudah terinstal di komputer Anda.
● Server database (MySQL atau lainnya) telah siap dengan database yang akan
digunakan.
● Pengetahuan dasar tentang PHP dan MySQL.

1. Langkah-Langkah Koneksi Database dengan Laravel


1.1. Membuat Proyek Laravel

Jika Anda belum memiliki proyek Laravel, buat proyek baru dengan perintah berikut:

bash
composer create-project --prefer-dist laravel/laravel modul-
eloquent-collection

1.2. Konfigurasi Koneksi Database

Setelah proyek Laravel dibuat, buka file .env di dalam folder proyek Anda dan sesuaikan
pengaturan database sesuai dengan server MySQL lokal Anda.

Contoh pengaturan .env:

env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=belajar_laravel
DB_USERNAME=root
DB_PASSWORD=

1.3. Migrasi Database


Sebelum mulai menggunakan Eloquent, pastikan database Anda siap. Laravel menyediakan
migration untuk membuat tabel di database.

1. Buat migration untuk tabel posts:


bash
php artisan make:migration create_posts_table
2. Kemudian buka file migration di database/migrations/ yang baru dibuat dan
tambahkan kolom-kolom untuk tabel posts:
php
public function up()
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('content');
$table->timestamps();
});
}
3. Jalankan perintah untuk menjalankan migration dan membuat tabel di database:
bash
php artisan migrate

1.4. Membuat Model untuk Post

Model adalah representasi tabel di database. Mari kita buat model untuk tabel posts:

bash
php artisan make:model Post

Model Post akan otomatis terhubung ke tabel posts.

2. Menggunakan Eloquent untuk Mengambil Data


2.1. Menyimpan Data ke Database

Untuk mulai bekerja dengan data, kita perlu menambahkan beberapa data ke tabel posts.
Kita bisa melakukan ini langsung melalui Eloquent di Tinker atau menambahkan seeding.

Melalui Tinker:

bash
php artisan tinker

Pada Tinker, Anda bisa menambahkan data sebagai berikut:

php
use App\Models\Post;

Post::create(['title' => 'Belajar Laravel', 'content' => 'Ini adalah


konten pertama']);
Post::create(['title' => 'Belajar Eloquent', 'content' => 'Ini
adalah konten kedua']);

Laravel akan otomatis menyimpan data ke tabel posts.

2.2. Mengambil Data Menggunakan Eloquent

Setelah menambahkan beberapa data ke database, kita bisa mengambil data menggunakan
Eloquent dengan perintah berikut di controller atau di route:

Contoh controller sederhana:

php
use App\Models\Post;

public function index() {


$posts = Post::all();
return view('posts.index', ['posts' => $posts]);
}

2.3. Collection di Eloquent

Hasil dari query Post::all() akan mengembalikan sebuah Eloquent Collection. Laravel
Collection adalah kumpulan data yang dapat dimanipulasi menggunakan berbagai metode
bawaan.

Contoh memanipulasi collection:

php
use App\Models\Post;

$posts = Post::all();

// Filter data dengan status tertentu (contoh status tidak ada,


ganti dengan kolom yang ada)
$filteredPosts = $posts->filter(function ($post) {
return strlen($post->title) > 10;
});

// Ambil hanya judul dari post


$titles = $posts->pluck('title');
// Urutkan berdasarkan judul
$sortedPosts = $posts->sortBy('title');

3. Manipulasi Data dengan Laravel Collection


Berikut adalah beberapa metode penting yang bisa digunakan untuk memanipulasi
collection:

3.1. Filter

Filter digunakan untuk menyaring data berdasarkan kondisi tertentu.

php
$filteredPosts = $posts->filter(function ($post) {
return $post->created_at > now()->subDays(7); // Filter post
yang dibuat dalam 7 hari terakhir
});

3.2. Map

Map digunakan untuk memodifikasi setiap elemen dalam collection.

php
$mappedPosts = $posts->map(function ($post) {
return [
'judul' => strtoupper($post->title),
'konten' => $post->content
];
});

3.3. Pluck

Pluck digunakan untuk mengambil satu kolom dari collection.

php
$titles = $posts->pluck('title');

3.4. SortBy

SortBy digunakan untuk mengurutkan data dalam collection berdasarkan kolom tertentu.

php
$sortedPosts = $posts->sortBy('title'); // Mengurutkan berdasarkan
judul
3.5. Each

Each digunakan untuk melakukan iterasi pada setiap item dalam collection.

php
$posts->each(function ($post) {
echo $post->title . '<br>';
});

4. Menampilkan Data di View


Sekarang kita akan menampilkan data yang telah diambil di view.

4.1. Membuat View

Buat view index.blade.php di folder resources/views/posts/ dan tambahkan kode


berikut:

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>

4.2. Membuat Route

Tambahkan route di routes/web.php untuk menampilkan data pada browser.

php
use App\Http\Controllers\PostController;

Route::get('/posts', [PostController::class, 'index']);


Sekarang, ketika Anda mengakses http://localhost:8000/posts, daftar post akan
ditampilkan di browser.

5. Praktik Collection yang Lebih Kompleks


Untuk lebih memahami penggunaan collection, kita bisa menggabungkan beberapa metode
untuk mendapatkan hasil yang lebih kompleks:

php
$recentPosts = Post::all()
->filter(function ($post) {
return $post->created_at > now()->subDays(30); // Filter
post yang dibuat dalam 30 hari terakhir
})
->sortByDesc('created_at') // Urutkan berdasarkan tanggal
terbaru
->pluck('title'); // Ambil hanya judul

6. Kesimpulan
Dalam modul ini, kita telah mempelajari:

● Cara menghubungkan Laravel dengan database.


● Cara mengambil data dari database menggunakan Eloquent.
● Bagaimana menggunakan Laravel Collection untuk memanipulasi dan mengelola
data.

7. Referensi:
● Laravel Documentation - Eloquent ORM
● Laravel Documentation - Collections
● Laravel News - Collection Methods

Anda mungkin juga menyukai