Diskusi Muhammad Fahmy Aziz
Selesai
Muhammad Fahmy Aziz
10 bulan yang lalu
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
BroKoding
10 bulan yang lalu
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.
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.