[ASK] delete semua data yang sebelumnya sudah di soft delete

Maaf mau tanya cara untuk menghapus semua data yang sebelumnya sudah di soft delete itu gimana ya? sebelumnya saya sudah coba tapi itu hanya berfungsi untuk single data, seperti ini:

 Blog::withTrashed()->find(1)->forceDelete();

dan saya coba seperti yang terdapat di dokumentasi laravelnya, seperti:

 $flight->history()->forceDelete();

tapi itu malah jadi error BadMethodCallException in Macroable.php line 74: Method forceDelete does not exist.

mohon bantuannya

avatar fajarachmadyusup
@fajarachmadyusup

4 Kontribusi 1 Poin

Diperbarui 7 tahun yang lalu

1 Jawaban:

Jawaban Terpilih

Kalo gasalah sih yah, mohon koreksi aja, Kalo untuk softdelete itu kan tidak menghapus data secara permanent kan yah,, emm tpinya dia update timestamp deleted_at nya pada row yg di softdelete.. Klo misal di buat query delete, delete nya where by deleted_at not null , gmna? Jd yg deleted_at nya ter isi alias data yg ke soft delete dihapus..

saya juga coba nyari gatau mmng blom nemu dan gatau salah maksudnya.. Dan setau saya

// Force deleting all related models... $flight->history()->forceDelete();

Ini sebagai contoh untuk force delete model yg terkait bkn dimaksud untuk hapus history atau hapus data yg ada di softdelete untuk dieksekusi delete permanent, jd coba aja delete where deleted_at no null

Siapa tau bisa :)

avatar gunalirezqimauludi
@gunalirezqimauludi

350 Kontribusi 243 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban