Pada artikel kali ini saya akan membahas tentang fitur yang keren di laravel yaitu tentang Bagaimana Cara Menggunakan Soft Delete DI laravel, Fitur eloquent di laravel sangat banyak yang bisa kita gunakan untuk membantu kita dalam membuat aplikasi berbasiskan web menggunakan laravel tentunya.

Salah satunya adalah fitur Soft Deletes, sebenarnya apa sih doft delet itu ? Soft Deletes adalah fitur dari laravel untuk membuat penghapusan data sementara. kita bisa menghapus data pada table, tapi data tersebut tidak benar-benar langsung dihapus, masih tersimpan dalam table tapi tidak tampil lagi.

Bisa di ibaratkan jika teman-teman pernah menggunakan wordpress CMS untuk membuat sebuah artikel blog, maka di dalam dashboard panel nya terdapat fitu trash di mana artikel yang di hapus tidak benar-benar terhapus melainkan hanya masuk kedalam trash dan artikel tersebut bisa di kembalikan atau biasa di sebut Restore,

Nah untuk di laravel kita tidak perlu susah-susah membuat fitur seperti itu, kita dapat dengan mudah menggunakanya karena fitur tersebut sudah built in di framework nya.

Baiklah langsung saja kita mulai membuatnya, di sini saya menginstall proyek  laravel dengan nama “seoftdeltes” dan perintahnya sebgai berikut :

composer create-project --prefer-dist laravel/laravel softdeletes

Dimana proyek laravel tersebut terhubung dengan database dan memiliki 1 table dengan nama books,  Lalu saya membuat sebuah perintah sederhana pada file Routes/web.php untuk menampilkan data pda table books :

 

use App\Books as Books;
Route::get('/books', function () {
    $books = Books::all();
    return $books;
});

Saat di jalankan menggunakan perintah “php artisan serve” maka akan tempil data sepert ini :

 

 

 

 

 

 

 

 

 

 

 

 

tujuan dari percobaan kita kali ini adalah kita akan mencoba menghapus data pada table books dengan menggunakan metode Soft Deletes lalu kita akan mencoba merestore nya kembali.

Sekarang saya akan merubah sedikit Model Books seperti di bawah ini :

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

class Books extends Model
{
    use SoftDeletes;
    protected $guarded = [];
}

 

Lalu kita akan mencoba mendelete satu baris data dengan ID 1 pada table books dengan menggunakan laravel tinker untuk menjalankan perintah delete nya, :

Bagaimana Cara Menggunakan Soft Delete DI laravel

Jika di lihat pada gambar di atas kita telah berhail mendapatkan data pada table books dengan ID1. Sekerang kita akan mendeletenya dengan perintah :

 

 

 

 

 

 

 

 

 

Jika kita refresh halamanya maka data dengan ID 1 sudah tidak ada seperti gambar berikut ini :

Bagaimana Cara Menggunakan Soft Delete DI laravel

 

 

 

 

 

 

 

 

 

 

 

Tetapi sebenarnya data tersebut tidak benar-bernar terhapus di table nya loh hehe nah sekrang coba teman-teman jalankan perintah ini di laravel tinkernya :

 

 

 

 

 

 

 

Jika di lihat data yang kita telah hapus sebelumnya ternata masih ada dan dapat di kembalikan dengan perinya restore hehehe.  Oke sekarang kita akan melakukan restore data nya dengan perintah ini :

 

 

 

 

 

 

Jika berhasil seharunya data yang kita telah hapus kini sudah kembali lagi ke tablenya silahkan teman-teman refresh halaman books nya dan kalian akan mendapati data nya kembali.

Oke cukup untuk artikel kali ini tentang Bagaimana Cara Menggunakan Soft Delete DI laravel semoga bermanfaat untuk teman-teman semuanya, sampai bertemu pada artikel selanjutnya.

WhatsApp chat