LARAVEL CRUD #5 - Menghapus data di database dengan Laravel 8

LARAVEL CRUD #5 - Menghapus data di database dengan Laravel 8

Pada tutorial kali ini, saya akan membagikan tutorial tentang cara Menghapus data di database dengan Laravel 8. Tutorial ini merupakan tutorial lanjutan dari tutorial CRUD sebelumnya, jadi saya sarankan untuk teman-teman silahkan ikuti tutorial ini dari part satu.


Untuk tutorial kali ini sangat mudah, jadi silahkah ikuti saja langkah-langkah dibawah ini :


  1.  Membuat tombol hapus pada halaman table list produk, jadi silahkan kalian buka pada resource/views/products/index.blade.php lalu cari tambahkan kodingan seperti dibawah ini pada coloum action.

    <form action="{{ route('product.destroy', $hasil->id) }}" method="POST">
    @csrf
    @method('delete')
    <a href="{{ route('product.edit', $hasil->id) }}" class="btn btn-success btn-sm">Edit</a>
    <button class="btn btn-danger btn-sm">Hapus</button>
    </form>
    atau silahkan copy saja semua kodiangan dibawah ini dan paste gantikan semua kodingan yang ada pada index.blade.php.
    <!doctype html>
    <html lang="en">
    
    <head>
        <!-- Required meta tags -->
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    
        <!-- Bootstrap CSS -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/css/bootstrap.min.css"
            integrity="sha384-zCbKRCUGaJDkqS1kPbPd7TveP5iyJE0EjAuZQTgFLD2ylzuqKfdKlfG/eSrtxUkn" crossorigin="anonymous">
        <!-- Fonts -->
        <link rel="preconnect" href="https://fonts.googleapis.com">
        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
        <link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@200;400&display=swap" rel="stylesheet">
    
    
        <style>
            body {
                font-family: 'Montserrat', sans-serif;
            }
    
        </style>
    
        <title>Hello, world!</title>
    </head>
    
    <body>
    
        <div class="container mt-5">
            <h1 class="text-center mb-5">List Produk</h1>
            @if(Session::has('success'))
    
            <div class="alert alert-success alert-dismissible fade show" role="alert">
            {{Session::get('success')}}
            <button type="button" class="close" data-dismiss="alert" aria-label="Close">
                <span aria-hidden="true">&times;</span>
            </button>
            </div>
    
            @endif
            <a href="{{ route('product.create') }}" class="btn btn-primary mb-3">Tambah Produk</a>
            <div class="card shadow-sm">
                <div class="card-body">
                    <table class="table table-striped">
                        <thead>
                            <tr>
                                <th scope="col">NO</th>
                                <th scope="col">Name</th>
                                <th scope="col">Details</th>
                                <th scope="col">Action</th>
                            </tr>
                        </thead>
                        <tbody>
                            <!-- untuk penomoran -->
                            @php
                                $no = 1;
                            @endphp
    
                            <!-- untuk menampilkan data -->
                            @foreach ($product as $hasil)
                            <tr>
                                <th scope="row">{{ $no++ }}</th>
                                <td>{{ $hasil->name }}</td>
                                <td>{{ $hasil->details }}</td>
                                <td>
                                    <form action="{{ route('product.destroy', $hasil->id) }}" method="POST">
                                    @csrf
                                    @method('delete')
                                    <a href="{{ route('product.edit', $hasil->id) }}" class="btn btn-success btn-sm">Edit</a>
                                    <button class="btn btn-danger btn-sm">Hapus</button>
                                    </form>
                                </td>
                            </tr>
                            @endforeach
                        </tbody>
                    </table>
                </div>
            </div>
        </div>
    
    
        <!-- Optional JavaScript; choose one of the two! -->
    
        <!-- Option 1: jQuery and Bootstrap Bundle (includes Popper) -->
        <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js"
            integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous">
        </script>
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.bundle.min.js"
            integrity="sha384-fQybjgWLrvvRgtW6bFlB7jaZrFsaBXjsOMm/tB9LTS58ONXgqbR9W8oWht/amnpF" crossorigin="anonymous">
        </script>
    
        <!-- Option 2: Separate Popper and Bootstrap JS -->
        <!--
        <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
        <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.min.js" integrity="sha384-VHvPCCyXqtD5DqJeNxl2dtTyhF78xXNXdkwX1CZeRusQfRKp+tA7hAShOK/B/fQ2" crossorigin="anonymous"></script>
        -->
    </body>
    
    </html>
    

    Form tersebut untuk mengirimkan id yang akan dihapus ke ProductController destroy
  2. Nah kemudian untuk langkah ini kita akan membuat kodingan pada function destroy dimana pada fungsi ini yang akan mengeksekusi data yang akan dihapus. Fungsi ini menhapus data sesuai dengan id yang dikirimkan dari form yang kita tambahkan pada index.blade.php lalu di tangkap pada parameter public function destroy($id).

    public function destroy($id)
        {
            $product = Product::find($id);
            $product->delete();
            return back()->with('success', 'Data berhasil di hapus!');
        }
Oke kurang lebih seperti itu untuk Menghapus data di database dengan Laravel 8. Jika kalian masih bingung, silahkan bertanya dikolom komentar dibawah ini :

Demikian tutorial kita untuk Membuat Aplikasi CRUD pada laravel 8 sudah selesai, nantikan tutorial berikut untuk membuat aplikasi CRUD kita ini lebih menarik.

Load comments