Menampilkan Data Eloquent Laravel

Saatnya Anda menampilkan semua data pengguna melalui eloquent Laravel yang begitu mudah dan simpel. Saya akan berikan bonus untuk membuat data palsu pengguna melalui Laravel Tinker, kalau Anda pernah belajar Laravel pemula setidaknya Anda akan paham apa itu tinker.

Daftar isi:

1. Skrip index.blade.php

Silakan buat berkas index.blade.php pada direktori users yang sebelumnya telah dibuat. Salin dan tempelkan skrip dibawah ini:

@extends('layouts.default', [
    'title' => 'Semua data users'
])

@section('content')
<div class="level">
    <div class="level-left">
        <div class="level-item">
            <h1 class="title is-4">Semua data users</h1>
        </div>
    </div>
    <div class="level-right">
        <div class="level-item">
            <a href="#" class="button is-light">Tambah</a>
        </div>
    </div>
</div>

<hr>

<div class="table-container">
    <table class="table is-fullwidth is-striped is-hoverable">
        <thead>
            <tr>
                <th>#</th>
                <th>Nama</th>
                <th>E-Mail</th>
                <th>CreatedAt</th>
                <th>UpdatedAt</th>
                <th>Action</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>1</td>
                <td>Febri Hidayan</td>
                <td>febrihidayan20@gmail.com</td>
                <td>1 Januari 2021</td>
                <td>20 Januari 2021</td>
                <td class="buttons">
                    <a href="#" class="button is-small is-success">Detail</a>
                    <a href="#" class="button is-small is-info">Edit</a>
                    <form action="#" method="POST">
                        @csrf
                        @method('DELETE')
                        <button type="submit" class="button is-small is-danger">Hapus</button>
                    </form>
                </td>
            </tr>
        </tbody>
    </table>
</div>
@endsection

2. Menampilkan semua data users

Pada berkas UserController.php sesuaikan fungsi index() pada skrip dibawah ini:

public function index()
{
    $users = User::all();

    return view('users.index', compact('users'));
}

Baca juga: Membuat View Pada Laravel

Skrip diatas memungkinkan untuk menampilkan semua data pengguna yang ada di basis data. Kemudian view('users.index') mengarahkan ke berkas index.blade.php pada direktori users, compact('users') untuk membuat larik (array) dari variabel yang akan dikembalikan ke berkas blade tersebut.

3. Konfirgurasi index.blade.php

Sekarang perbaruilah skrip berkas index.blade.php seperti dibawah ini yang bisa Anda sesuaikan secara mandiri. Variabel $users didapat dari langkah sebelumnya yang melakui fungsi compact().

@foreach ($users as $user)
    <tr>
        <td>{{ $user->id }}</td>
        <td>{{ $user->name }}</td>
        <td>{{ $user->email }}</td>
        <td>{{ $user->created_at->format('d F Y') }}</td>
        <td>{{ $user->updated_at->format('d F Y') }}</td>
        ...
    </tr>
@endforeach

Catatan: ... titik 3 yang dimaukan untuk menandai adanya skrip yang tidak ditampilkan.

4. Membuat data palsu

Laravel memiliki kemudahan dalam pengembangan yang menjadikan tinker untuk membuat data palsu untuk pengujian. Jadi Anda tidak perlu memasukan data secara manual satu-persatu yang membuat Anda bosen jika suatu saat harus mengisi ulang data yang dimaukan. Jika Anda ingin melihat dimana proses ini terjadi silakan buka direktori database\factories maka akan terlihat berkas UserFactory.php. Maka di situlah proses data palsu di buat.

Silakan buka terminal kemudian masukan skrip dibawah ini, jika Anda ingin membuat data palsu sebanyak 10 tinggal diubah saja nilai parameternya.

php artisan tinker
User::factory(5)->create()

Setelah menambahkan data palsu pengguna tidak ada salahnya untuk melihat data yang telah dibuat, seperti dibawah ini. kunjung http://127.0.0.1:8000/users

hasil