【发布时间】:2015-12-22 01:03:16
【问题描述】:
我正在尝试使数据表与我的 rest API 配合得很好。让我直接声明:“不会更改 REST api!。
当使用服务器端处理时,数据表想要发送特定的查询参数并期望返回特定的格式。对我来说,这就是公牛。没有人想修改他们的后端以匹配第三方库的约定(虽然,我想,提供默认值很好)。
我的桌子是这样设置的:
{
"processing": true,
"serverSide": true,
"ajax": {
"url": "/api/customers/",
"dataSrc": "results",
"data": function (data, settings) {
// Modify query parameters to match my API
data.page = ...
data.page_size = ...
return data
}
},
...
}
如您所知,我使用ajax.data 属性来管理表从 API 请求的内容。这很棒。奇迹般有效。当响应返回时,它看起来像这样
{
"count": 85,
"next": "http://myurl.com/?page=2",
"previous": null,
"results": [
... // The actual data
]
}
从我的配置中,您可以看出我使用ajax.dataSrc 让表格获取results 属性,但我找不到任何有关如何从我的回复中获取分页信息的文档。我已经尝试将我的配置修改为
{
...
"ajax": {
"url": "/api/customers/",
"dataSrc": function(data) {
return {
recordsTotal: data.count,
recordsFiltered: ...,
data: data.results,
...
}
},
...
},
...
}
但这只是抛出了一个错误。似乎不可能……那么,我该怎么办?
【问题讨论】:
标签: jquery ajax datatable pagination