Tutorial Membuat Paginate pada Laravel

Posted on 15 August 2024


Berikut adalah tutorial langkah demi langkah untuk membuat pagination (paginasi) di Laravel. Pagination sangat berguna untuk membagi data besar menjadi halaman-halaman yang lebih kecil dan mudah diakses.

1. Instalasi dan Persiapan

Pastikan Anda sudah menginstal Laravel dan memiliki proyek yang aktif. Pagination adalah fitur built-in Laravel, jadi Anda tidak memerlukan paket tambahan.

2. Mengambil Data dengan Pagination

Di dalam controller, Anda akan menggunakan metode paginate() untuk mengambil data dengan paginasi. Misalnya, di controller MatakuliahController:

<?php
namespace App\Http\Controllers;
use App\Models\Matakuliah;
use Illuminate\Http\Request;
class MatakuliahController extends Controller
{
    public function index()
    {
        // Mengambil data dengan paginasi, 10 item per halaman
        $Matakuliah = Matakuliah::paginate(10);
        return view('matakuliah.index', compact('matakuliah'));
    }
}

3. Menampilkan Data di Blade View

Di file Blade view (resources/views/matakuliah/index.blade.php), Anda dapat menampilkan data dan link paginasi dengan kode berikut:

<!DOCTYPE html>
<html>
<head>
    <title>Mata Kuliah List</title>
</head>
<body>
    <h1>Mata Kuliah List</h1>
    <ul>
        @foreach ($matakuliah as $mk)
            <li>{{ $mk->title }}</li>
        @endforeach
    </ul>
    {{ $matakuliah->links() }}
</body>
</html>
Metode links() akan menghasilkan link navigasi yang otomatis dikendalikan oleh Laravel.

4. Menyesuaikan Pagination

Laravel menggunakan Tailwind CSS untuk styling default pagination. Jika Anda menggunakan Bootstrap atau framework CSS lainnya, Anda bisa menyesuaikannya.

Untuk menggunakan Bootstrap, tambahkan kode berikut di file AppServiceProvider.php atau file provider lain yang sesuai:

use Illuminate\Pagination\Paginator;


public function boot()

{

    Paginator::useBootstrap();

}

use Illuminate\Pagination\Paginator;

public function boot()
{
    Paginator::useBootstrap();
}