如何将yajra datatables中的delete作为我的索引控制器
public function index(Request $request)
{
// $list_user = User::all();
if($request->ajax()){
$user = User::latest()->get();
return datatables()->of($user)
->addIndexColumn()
->addColumn('action', function (User $user){
$actionBtn = '<a href="'.route('user.edit',$user->id).'" title="Edit User" class="btn btn-sm" style="color: #fff;background-color: #3DCB3A;border-color: #8ad3d3"> <i class="fa fa-edit"></i> </a>
<a href="'.route('user.destroy',$user->id).'" class="btn btn-danger btn-sm" title="Hapus User" onclick="hapusUsers('.$user->id.')"><i class="fa fa-trash "></i></a>';
return $actionBtn;
})
->rawColumns(['action'])
->make(true);
}
return view('dashboard.user.user');
// return response()->json($list_user);
}
}这是我的销毁控制器
public function destroy($id)
{
if($id==1){return redirect()->back();}
$user = User::findOrfail($id);
$user->delete();
return response()->json(['messege'=>'success'],200);
}在我看来,这个javascript
@push('javascripts')
<script type="text/javascript">
$(function () {
var table = $('.yajra-datatable').DataTable({
processing : true,
serverSide : true,
ajax :"{{route('user.index')}}",
columns: [
{data: 'DT_RowIndex', name: 'DT_RowIndex'},
{data: 'name', name:'name'},
{data: 'username', name:'username'},
{data: 'email', name:'email'},
{data: 'action', name: 'action', orderable: false, searchable: false},
],
});
} );
</script>
@endpush我只想做删除,但我不知道如何在控制器中做,你能修好我的控制器吗
发布于 2021-10-04 05:07:11
用这个替换您的控制器,并检查:
public function index(Request $request)
{
// $list_user = User::all();
if($request->ajax()){
$user = User::latest()->get();
return datatables()->of($user)
->addIndexColumn()
->addColumn('action', function (User $user){
$actionBtn = '<a href="'.route('user.edit',$user->id).'" title="Edit User" class="btn btn-sm" style="color: #fff;background-color: #3DCB3A;border-color: #8ad3d3"> <i class="fa fa-edit"></i> </a>
<a href="'.route('user.destroy',$user->id).'" class="btn btn-danger btn-sm" title="Hapus User" ><i class="fa fa-trash "></i></a>';
return $actionBtn;
})
->rawColumns(['action'])
->make(true);
}
return view('dashboard.user.user');
// return response()->json($list_user);
}
}发布于 2021-10-05 00:30:46
我修复了带有警告的删除按钮
这是Http/Controller/UserController.php
public function index(Request $request)
{
// $list_user = User::all();
if($request->ajax()){
$user = User::latest()->get();
return datatables()->of($user)
->addIndexColumn()
->addColumn('action', function (User $user){
$actionBtn = '<a href="'.route('user.edit',$user->id).'" title="Edit User" class="btn btn-sm" style="color: #fff;background-color: #3DCB3A;border-color: #8ad3d3"> <i class="fa fa-edit"></i> </a>
<a href="javascript:void(0)" class="btn btn-danger btn-sm" title="Hapus User" onclick="hapus('.$user->id.')" ><i class="fa fa-trash "></i></a>';
return $actionBtn;
})
->rawColumns(['action'])
->make(true);
}
return view('dashboard.user.user');
// return response()->json($list_user);
}这是resources/views/dashboard/user/user.blade.php在top @部分中添加此内容
@push('stylesheets')
<link rel="stylesheet" href="{{asset('assets/plugins/sweetalert2-theme-bootstrap-4/bootstrap-4.min.css')}}">
@endpush并在底部添加此内容
@push('javascripts')
<script src="{{asset('assets/plugins/sweetalert2/sweetalert2.min.js')}}"></script>
<script type="text/javascript">
$(function () {
var table = $('.yajra-datatable').DataTable({
processing : true,
serverSide : true,
ajax :"{{route('user.index')}}",
columns: [
{data: 'DT_RowIndex', name: 'DT_RowIndex'},
{data: 'name', name:'name'},
{data: 'username', name:'username'},
{data: 'email', name:'email'},
{data: 'action', name: 'action', orderable: false, searchable: false},
],
});
} );
function hapus(e) {
var url = '{{ route("user.destroy", ":id") }}';
url = url.replace(':id', e);
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
Swal.fire({
title : "Apakah Anda Yakin ?",
text : "Data Yang Sudah Dihapus Tidak Bisa Dikembalikan!",
icon : "warning",
showCancelButton : true,
confirmButtonColor: "#3085d6",
cancelButtonColor : "#d33",
confirmButtonText : "Ya, Tetap Hapus!"
}).then((result) => {
if (result.value) {
$.ajax({
url : url,
type : "delete",
success: function(data) {
$('.yajra-datatable').DataTable().ajax.reload();
}
})
}
})
}
</script>
@endpushhttps://stackoverflow.com/questions/69430580
复制相似问题