Menampilkan Satu Data Eloquent Laravel

Berdasarkan hasil pencarian saya di Google ternyata tutorial seperti ini banyak diminati yaitu menampilkan data Laravel menggunakan id. Tetapi sebagian orang kadang tidak tahu kata kunci yang paling sesuai untuk menampilkan satu data menggunakan id yang dimaukan. Maka tutorial ini akan membahas hal tersebut karena ini merupakan detail data.

Daftar isi:

1. Menampilkan data pengguna

Seperti tutorial mengedit data juga menampilkan data pengguna, sesuaikan skrip dibawah ini pada berkas UserController.php.

public function show($id)
{
    $user = User::findOrFail($id);

    return view('users.show', compact('user'));
}

2. Skrip show.blade.php

Buatlah berkas show.blade.php pada direktori users kemudian salin dan tempelkan pada berkas tersebut:

@extends('layouts.default', [
    'title' => 'Detail data user'
])

@section('content')
<div class="level">
    <div class="level-left">
        <div class="level-item">
            <h1 class="title is-4">Detail data user</h1>
        </div>
    </div>
    <div class="level-right">
        <div class="level-item">
            <a href="#" class="button is-light">Edit</a>
        </div>
        <div class="level-item">
            <a href="{{ route('users.index') }}" class="button is-light">Kembali</a>
        </div>
    </div>
</div>

<hr>

<div class="field">
    <label class="label">Nama Lengkap</label>
    <pre>{{ $user->name }}</pre>
</div>

<div class="field">
    <label class="label">Alamat E-Mail</label>
    <pre>{{ $user->email }}</pre>
</div>

<div class="field">
    <label class="label">CreatedAt</label>
    <pre>{{ $user->created_at }}</pre>
</div>

<div class="field">
    <label class="label">UpdatedAt</label>
    <pre>{{ $user->updated_at }}</pre>
</div>
@endsection

3. Perbarui skrip blade

Sekarang waktunya untuk memperbarui berkas yang perlu dilakukan pada masing-masing berkas:

Perbarui skrip show.blade.php

<a href="#" class="button is-light">Edit</a>
// menjadi
<a href="{{ route('users.edit', $user->id) }}" class="button is-light">Edit</a>

Perbarui skrip edit.blade.php dan index.blade.php

<a href="#" class="button is-light">Detail</a>
// menjadi
<a href="{{ route('users.show', $user->id) }}" class="button is-light">Detail</a>

Catatan: Pada berkas index.blade.php sesuaikan hanya pada rutenya saja, bukan berarti keseluruhan. Karena skripnya tidak jauh beda dan hanya sama pada tautan yang akan diberikan.

Sekarang waktunya Anda untuk mencoba tutorial ini apakah sudah benar-benar berhasil atau tidak, selamat mencoba yaaa! 😀

Cek bonus tutorial ini

Bonus ini merupakan cara yang baik bagi Anda dengan memberikan beberapa info menarik, emang tidak terlalu sulit tapi sangat baik untuk dicoba. Sejauh ini ketika Anda melakukan tambah dan perbarui data pasti akan mengahlikan halaman ke indeks bukan halaman tampil (show.blade.php atau tampil satu data). Disinilah saatnya Anda melakukan perubahan tersebut dengan menambahkan pengahlikan halamannya. Berikut penjelsannya:

Perbarui fungsi store()

$user = User::create(
    $request->all()
);

return redirect()->route('users.show', $user->id);

Perbarui fungsi update()

...

$user->update($request->all());

return redirect()->route('users.show', $user->id);

Jadi setelah melakukan proses tambah dan perbarui data pengguna maka masing-masing memiliki id yang akan digunakan untuk melakukan pengahlihan rute users.show yang mewajibkan menambahkan parameter id. Silakan untuk melakukan perubahan skrip tersebut dan cobalah segera, berhasil atau tidak bisa ditanyakan di kolom komentar.

Tutorial CRUD Eloquent Laravel


1. Persiapan CRUD Eloquent ORM Laravel

2. Menampilkan Data Eloquent Laravel

3. Menambahkan Data Eloquent Laravel

4. Mengedit Data Eloquent Laravel

5. Menampilkan Satu Data Eloquent Laravel

6. Menghapus Data Eloquent Laravel

7. Membuat Form Validasi Eloquent Laravel

8. Membuat Pagination Eloquent Laravel