Diskusi Muhammad Fahmy Aziz

Selesai
Muhammad Fahmy Aziz
Ditanyakan pada: Memanfaatkan Soft Deletes

mengenal soft delete

halo! mengenai softdeletes, saya ada beberapa pertanyaan

  • apakah ada gambaran tentang bagaimana softdeletes ini bekerja di Laravel?
  • apakah kita bisa mengembalikan data spesifik yang di softdelete?

2 Jawaban

Avatar
BroKoding

10 bulan yang lalu

Jawaban Terpilih

Halo kak, soft delete ini konsepnya sangat sederhana sebenarnya. Jadi seperti yang kita tau apabila melakukan delete data maka akan menghapus data tersebut pada database bukan? Nah kalau soft delete tidak. Soft delete pada laravel ini merupakan 1 kolom pada model (yang juga ada pada tabelnya) bernama deleted_at. Kolom ini bertipe boolean atau tiny int (hanya bisa diisi value 0 atau 1) sebagai penanda apakah record ini dihapus atau tidak. Jadi bukan dengan menghapus data, melainkan kita memberikan value 1 terhadap data tersebut pada kolom deleted_at. Sebaliknya ketika kita ingin melakukan recovery data soft delete, maka yang dilakukan adalah mengupdate value kolom deleted_at yang tadinya bernilai 1 menjadi 0. Jika bernilai 0 maka model pada laravel akan membaca bahwa data ini tidak dihapus.

Avatar
Muhammad Fakhry Burhanuddin

10 bulan yang lalu

Soft delete ini tidak menghapus record dari tabel. Hanya akan menambahkan field deleted_at pada tabel. Jadi pada saat query Laravel hanya mengecek nilai deleted_at ini ada atau tidak.