Lanjutan Tutorial CRUD Laravel 9/10 – Car Data with Merk Relationship

Lanjutan Tutorial CRUD Laravel 9/10 – Car Data with Merk Relationship
Table of Contents

Nah kamu udh selesai create kita coba lanjut

Oke, kamu sudah punya struktur CRUD Laravel 9/10 untuk data Car dengan relasi ke Merk yang cukup lengkap, tinggal kamu lengkapi fitur show, edit, update, dan destroy agar benar-benar lengkap. Di bawah ini saya lengkapi bagian CarController dan juga tambahkan blade file edit dan show.


CarController Tambahan:

 

📄 resources/views/car/edit.blade.php

 

📄 resources/views/car/show.blade.php

 

🔀 Tambahkan Routing CRUD Lengkap di routes/web.php

 

🔀 Perbaikin tampilannya menjadi terbaru di car/index.blade.php

 


✅ 1. Install Laravel Breeze untuk Auth (Login/Register)

Buka terminal dan jalankan:

Pilih yang livewire


Ini akan menambahkan:

  • Halaman Login, Register, Forgot Password
  • Route auth di routes/auth.php
  • Otomatis buat tabel users di database

✅ 2. Tambahkan Middleware auth ke Route car

Edit routes/web.php, ubah route car seperti ini:

 

Dengan begini, hanya user yang sudah login bisa akses /car.


✅ 3. Buat Akun User Lewat Seeder

Buka file database/seeders/DatabaseSeeder.php dan tambahkan:

 

Lalu jalankan seeder:

 



✅ 4. Jalankan dan Tes Login


Lalu buka:
http://127.0.0.1:8000/login

Masukkan:

Setelah login, kamu bisa akses /car. Kalau belum login, otomatis akan diarahkan ke halaman login.

 

Berikut implementasi tombol logout langsung di halaman daftar mobil (car list) menggunakan penjelasan dan struktur yang sesuai dengan standar Laravel (Breeze atau Laravel default), dan diletakkan dengan rapi di atas tabel, hanya ditampilkan jika user sudah login:

Update

..\resources\views\livewire\pages\auth\login.blade.php

Sekarang Ubah web.php

 

 

✅ Penjelasan Singkat:

  • Logout hanya muncul saat user login, pakai @auth.
  • Logout pakai POST method, jadi perlu <form> + @csrf.
  • Tidak muncul di setiap baris, tapi di bagian atas halaman, lebih bersih dan konsisten.

Kategori:

Tags: