DataTables: Benutzerdefinierte Antwortbehandlung
Ich fing an zu arbeitenAngularJS
undDataTables
und frage mich, ob es möglich ist, die Antwort anzupassenDataTables
erwartet. Die aktuelle Erwartung an das DataTables-Plugin sieht ungefähr so aus:
{
"draw": 1,
"recordsTotal": 57,
"recordsFiltered": 5,
"data": [...]
}
Auf der Serverseite werden die APIs von gehandhabtdjango-tastypie
Die Antwort vom Server lautet:
{
meta: {
limit: 20,
next: null,
offset: 0,
previous: null,
total_count: 2
},
objects: [...]
}
Gibt es eine Möglichkeit, das Datatables-Plugin zu optimieren, um diese Antwort zu akzeptieren / zuzuordnen, oder muss ich eine Möglichkeit finden, erwartete Felder zur API hinzuzufügen?
Bisher habe ich das getan:
var deptTable = angular.element('#deptManagementTable').DataTable({
processing: true,
serverSide: true,
pagingType: "simple_numbers",
ajax: {
url: "/client/api/v1/departments/",
data: function(d) {
d.limit = d.length;
d.offset = d.start;
d.dept_name__icontains = d.search.value;
},
dataSrc: function(json) {
for (var i=0, len=json.objects.length ; i<len ; i++) {
json.objects[i].DT_RowId = json.objects[i].dept_id;
}
return json.objects;
}
},
aLengthMenu: [
[5, 25, 50, 100],
[5, 25, 50, 100]
],
iDisplayLength: 5,
columns: [
{
data: "dept_name"
},
{
data: "dept_created_on",
render: function ( data, type, full, meta ) {
var dateCreated = new Date(data);
dateCreated = dateCreated.toLocaleDateString();
return dateCreated;
}
}
]
});
Jede Hilfe wird geschätzt.
Danke im Voraus :)