在DRF中,我已将分页限制添加到100’PAGINATE_BY’:100,
由于Restangular期望数组形式的结果,我必须在我的角度应用程序模块中使用下面的元提取器函数
由于Restangular期望数组形式的结果,我必须在我的角度应用程序模块中使用下面的元提取器函数
var app = angular.module("myapp",["restangular"].config(function( RestangularProvider){ RestangularProvider.setResponseExtractor(function(response,operation,what,url) { if (operation === "getList") { var newResponse = response.results; newResponse._resultMeta = { "count": response.count,"next": response.next,"prevIoUs": response.prevIoUs }; return newResponse; } return response; }); });
我的控制器看起来像
app.controller('DataCtrl',function($scope,Restangular){ var resource = Restangular.all('myapp/api/dataendpoint/'); resource.getList().then(function(data){ $scope.records = data; }); }
控制器中没有元信息,如果有超过100条记录,我该如何分页?
我想你可以简单地打电话:
RestangularProvider.addResponseExtractor(function(data,url,response) { if (operation === "getList") { data._resultMeta = { "count": response.count,"prevIoUs": response.prevIoUs }; return data; } return response; });
和
var page = 2; var resource = Restangular.all('myapp/api/dataendpoint/'); resource.getList({page: page}).then(function(data){ console.log(data._resultMeta.next ? 'there is more pages' : 'You reach the end'); });
我不常用矩形但Django Rest Framework support pagination from query parameter