Я использовал обычные таблицы и все мои кнопки, где работали нормально.Затем я наткнулся на DataTables и, таким образом, внедрил таблицы данных, чтобы перечислить всех сотрудников в моей модели сотрудников.Поэтому я использую JQuery для предоставления данных в мою таблицу.Ниже приведен код:
$(document).ready( function () {
$('.table').DataTable({
processing: true,
serverSide: true,
ajax : '{!! route('employees.search') !!}',
columns: [
{ data: 'name', name: 'name'},
{ data: 'empid', name: 'empid'},
{ data: 'user_type', name: 'user_type'},
{ data: 'depots', name: 'depots'},
{ data: 'id', name: 'id',
render: function ( data , row ) {
return '<div style="margin-left:1%;">
<button class="btn btn-round btn-primary btn-sm"
onclick="showMessage('+data+')">Delete</button>
<form id="'+data+'" method="POST" action=" {{
route("employees.destroy","'+data+'") }} ">
<input type="hidden" name="_method"
value="delete"> {{ csrf_field() }} </form> </div>';
}
},
],
});
});
Итак, в приведенном выше коде я нарисовал кнопку для выполнения функции удаления.Каким-то образом, когда я передаю параметр в мой маршрут {{route("employees.destroy","'+data+'") }}
, он возвращается как data , в то время как я ожидаю, что это будет id строки.Ниже приведен мой код для функции удаления:
public function destroy($id)
{
return $id;
if ( Auth::check() ) {
$findResult = AppUser::where('id','=',$id)->first();
$user = User::where('email',$findResult->email)->first();
if ($findResult->delete())
{
if ($user) {
$user->delete();
}
return redirect()->route('employees.index','all')->with('success' , 'Employee deleted successfully!');
}
return back()->withInput()->with('error' , 'Employee could not be deleted');
}
}
Таким образом, полученный ответ неверен.Может кто-нибудь, пожалуйста, скажите мне альтернативу или решение, чтобы отправить paramater на маршрут?Я ожидаю, что значение будет идентификатором строки, но ответ, который я получаю, это просто '+ data +' .