laravel7 ajax軟刪除
阿新 • • 發佈:2021-11-11
1:HTML書寫
{{-- 不能自己刪除自己的按鈕出現 $item迴圈的值,$auth檢測函式 --}} @if(auth()->id()!=$item->id) <a title="刪除" href="javascript:;" onclick="member_del(this,{{$item->id}})" class="btn btn-danger" style="text-decoration:none">刪除</a> @endif
2:繫結jq點選事件
/*使用者-刪除*/ //獲取迴圈的id function member_del(obj, id) { //防止報419錯誤,需傳_token const _token = "{{csrf_token()}}" //提示資訊 layer.confirm('確認要刪除嗎?', function (index) { $.ajax({ type:'DELETE', url: '/admin/del/' + id, data: { id: id, _token: _token }, dataType: 'json', success: function (res) { //前端進行移除 $(obj).parents("tr").remove(); layer.msg('已刪除!', {icon: 1, time: 1000}); }, error: function (data) { console.log(data.msg); }, }); }); }
3:路由:
//軟刪除 Route::group(['prefix'=>'admin','namespace'=>'admin'],function (){ Route::delete('del/{id}','UserController@delete'); }
4:控制器程式碼:
// 刪除 public function delete($id){ $res=UserModel::delData($id); if ($res!==false){ return ['code'=>200,'data'=>[],'message'=>'刪除成功']; }else{ return ['code'=>500,'data'=>[],'message'=>'刪除失敗']; }
5:模型程式碼
//刪除 public static function delData($id){ return self::find($id)->delete(); }
6:模型需使用SoftDeletes
7:資料庫新增軟刪除欄位deleted_at