with serve framework angularjs django pagination django-rest-framework restangular

angularjs - serve - ¿Cómo agregar paginación en Restangular y Django Rest Framework?



rest framework django 2 (1)

Supongo que simplemente puedes llamar:

RestangularProvider.addResponseExtractor(function(data, operation, what, url, response) { if (operation === "getList") { data._resultmeta = { "count": response.count, "next": response.next, "previous": response.previous }; return data; } return response; });

y

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''); });

No soy habitual con la paginación de apoyo Rectangular pero Django Rest Framework del parámetro de consulta

En DRF he agregado el límite de paginación a 100 ''PAGINATE_BY'': 100, ya que Restangular espera resultados en forma de matriz, tuve que usar la función de metaejector siguiente en mi módulo de aplicación angular

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; }); });

y mi controlador parece

app.controller(''DataCtrl'',function($scope, Restangular){ var resource = Restangular.all(''myapp/api/dataendpoint/''); resource.getList().then(function(data){ $scope.records = data; }); }

La información meta no está disponible en el controlador, ¿cómo puedo paginar si hay más de 100 registros disponibles?