使用ember-data RESTAdapter返回分页数据的正确模式?

Tyl*_*ove 14 pagination ember.js ember-data

我正在页面中显示使用Ember Data RESTAdapter获取的文章列表.我需要实现一个bootstrap'esque paginator(参见:http://twitter.github.com/bootstrap/components.html#pagination),并且似乎无法找到一个合理的模式来返回分页数据,如页数,文章数,当前页面,在单个请求中.

例如,我希望API返回类似于:

{
  articles: [{...}, {...}],
  page: 3,
  article_count: 4525,
  per_page: 20
}
Run Code Online (Sandbox Code Playgroud)

一个想法是添加App.Paginator DS.Model,因此响应可能如下所示:

{
  articles: [{...}, {...}],
  paginator: {
    page: 3,
    article_count: 4525,
    per_page: 20
  }
}
Run Code Online (Sandbox Code Playgroud)

但是这对于一些如此微不足道的东西来说,这似乎有些过分.有没有人解决过这个问题或者找到了他们喜欢的特定模式?是否有一种简单的方法来管理RESTAdapter映射以解决此类情况?

ken*_*ken 4

尝试使用Ember Pagination Support Mixin并提供您自己的以下方法的实现。您可以在用户导航页面时获取所需的内容,而不是加载所有内容。您最初需要的只是您的记录的总帐户。

didRequestRange: function(rangeStart, rangeStop) {
    var content = this.get('fullContent').slice(rangeStart, rangeStop);
    this.replace(0, this.get('length'), content);
  }
Run Code Online (Sandbox Code Playgroud)