I bump into this problem. i have delete button and if working just fine if there is more than 1 record.
But if there is only 1 record left, it wont deleting. So, i cant delete all the row and i will always have 1 record left. I implemented softdelete in my model.
And it doesn give any error, it just do nothing after i confirm deletion
My delete button code
<button id="delete" data-title="" type="button" class="btn btn-danger btn-sm" href="" style="margin-bottom: 0.5em;"> <i class="zmdi zmdi-delete zmdi-hc-fw" style="color: #fff; font-size: 1.5em;"></i> Delete </button> <form method="post" id="deleteForm"> @csrf @method("DELETE") <input type="submit" value="" style="display:none;"> </form> @push('script') <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script> <script> // Sweetalert Confirm $('button#delete').on('click', function (event) { event.preventDefault(); var href = $(this).attr('href'); var title = $(this).data('title'); swal({ title: "Yakin Akan hapus " + title + " ?", text: "Data akan hilang dari database !!!", icon: "warning", dangerMode: true, buttons:{ cancel: { visible: true, text : 'Batal', // className : 'btn btn-warning' className : 'btn btn-success' }, confirm: { text : 'Hapus', className: 'btn btn-danger' } } }) .then((willDelete) => { if (willDelete) { document.getElementById('deleteForm').action = href; document.getElementById('deleteForm').submit(); swal("Data " + title + " berhasil dihapus!", { icon: "success", }); } else { swal("Batal", "Data tidak dihapus", "error"); } }); }); </script> @endpush my model
class TracingRecordDt extends Model { use SoftDeletes; protected $table = 'tracing_c19d'; protected $guarded = ['id']; protected $dates = [ 'deleted_at', ]; public function user() { return $this->belongsTo(User::class, 'user_id'); } } My controller
public function destroy($id) { dd('test'); //doesn't even run, if 1 record left $tracing_recorddts = TracingRecordDt::findOrFail($id); $tracing_recorddts->delete(); return redirect()->back(); } And my route
Route::resource('tracing-record', 'TracingRecordController'); https://stackoverflow.com/questions/65557098/laravel-fail-to-delete-if-only-1-record-left January 04, 2021 at 10:46AM
没有评论:
发表评论