View add this in javascript:
{data: 'action', name: 'action', orderable: false, searchable: false}
Example of how i added edit/delete/view to one of my projects
public function anyData()
{
//return Datatables::of(sales::select('*'))->make(true);
$sales = DB::table('sales')
->select(['id', 'name','source','phone','salesrep','contactname','status','notes','busname','secondname', 'callback']);
return Datatables::of($sales)
->addColumn('action', function ($sales) {
return '<a href="sale/'.$sales->id.'/edit" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>
<a href="sale/'.$sales->id.'" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-zoom-in"></i> View</a>
<button class="btn btn-delete" data-remote="sale/' . $sales->id . '">Delete</button>
';
})
->addColumn('phone', function ($sales) {
return '<a href="tel:'.$sales->phone.'">'.$sales->phone.'</a>';
})
//->editColumn('id', 'ID: {{$id}}')
->make(true);
}
add column
return Datatables::of($sales)
->addColumn('action', function ($sales) {
return '<a href="sale/'.$sales->id.'/edit" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>
<a href="sale/'.$sales->id.'" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-zoom-in"></i> View</a>
<button class="btn btn-delete" data-remote="sale/' . $sales->id . '">Delete</button>
';
})
Example of my delete java in the view
$('#sales-table').on('click', '.btn-delete[data-remote]', function (e) {
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
var url = $(this).data('remote');
// confirm then
$.ajax({
url: url,
type: 'DELETE',
dataType: 'json',
data: {method: '_DELETE', submit: true}
}).always(function (data) {
$('#sales-table').DataTable().draw(false);
});
});
Any questions i will try to answer later