Laravel 分页时Datatable未返回正确的索引
使用服务器端分页的Laravel datatable,在对datatable执行任何操作时,索引的更改顺序不正确。 控制器代码如下所示Laravel 分页时Datatable未返回正确的索引,laravel,datatable,Laravel,Datatable,使用服务器端分页的Laravel datatable,在对datatable执行任何操作时,索引的更改顺序不正确。 控制器代码如下所示 return Datatables::of($newsletters) ->editColumn('created_at', function($row) { return Carbon::parse($row->created_at)->format('d-m-Y'); })
return Datatables::of($newsletters)
->editColumn('created_at', function($row) {
return Carbon::parse($row->created_at)->format('d-m-Y');
})
->rawColumns(['created_at'])
->make(true);
}
JS代码:
if($('#admin_news_letters_view').length > 0) {
$(document).ready(function () {
var i = 1;
$('#admin_news_letters_view').DataTable({
processing: true,
serverSide: true,
ajax: "{{ route('admin.news_letters.view') }}",
columns: [
{
"render": function (data, type, full, meta) {
return i++;
}
},
{data: 'name'},
{data: 'email'},
{data: 'created_at'},
]
});
});
}
在控制器中添加索引列。 控制器:
return Datatables::of($newsletters)
->addIndexColumn()
->editColumn('created_at', function($row) {
return Carbon::parse($row->created_at)->format('d-m-Y');
})
->rawColumns(['created_at'])
->make(true);
}
Js:
if($('#admin_news_letters_view').length > 0) {
$(document).ready(function () {
$('#admin_news_letters_view').DataTable({
processing: true,
serverSide: true,
ajax: "{{ route('admin.news_letters.view') }}",
columns: [
{
data: 'DT_RowIndex', name: 'DT_RowIndex'
},
{data: 'name'},
{data: 'email'},
{data: 'created_at'},
]
});
});
}