加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 如何在Restangular和Django Rest Framework中添加

发布时间:2020-12-17 07:22:47 所属栏目:安全 来源:网络整理
导读:在DRF中,我已将分页限制添加到100’PAGINATE_BY’:100, 由于Restangular期望数组形式的结果,我必须在我的角度应用程序模块中使用下面的元提取器函数 var app = angular.module("myapp",["restangular"].config(function( RestangularProvider){ Restangular
在DRF中,我已将分页限制添加到100’PAGINATE_BY’:100,
由于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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读