如何将json分页资源看起来像?

时间:2015-08-09 13:32:21

标签: ember.js pagination ember-data ember-cli json-api

使用Ember Data和Jsonapi。如何将json分页资源看起来像?

我构建了我的回复,看起来像是:

"meta": {
  "page": {
    "number": 1,
    "size": 5,
    "total": 39
  }
},
"links": {
  "self": "http://localhost:3099/api/v1/articles",
  "prev": null,
  "next": "http://localhost:3099/api/v1/articles?page[number]=2",
  "first": "http://localhost:3099/api/v1/articles?page[number]=1",
  "last": "http://localhost:3099/api/v1/articles?page[number]=39"
},
"data": [
  ...
]

但我不确定这是否是正确的格式。基于http://jsonapi.org/format/#fetching-pagination

的解释

或者,分页链接(即prevnextfirstlast)是否应该在meta.page中?

2 个答案:

答案 0 :(得分:1)

您可以使用ember-cli-pagination及其格式进行分页。我非常确定Ember Data 严格遵循JSON API规范。

根据您的示例,这可能是一种格式:

/app

此有效负载的请求网址可以是{ "meta": { "total_pages": 3, "page": 1 }, "articles": [ {"id": 1, "title": "Hello World", "body": "More to Come"}, // ...... ] } 。有关详细信息,请参阅API。

答案 1 :(得分:1)

Ember Data并未严格遵守JSON规范,因此您应该更专注于设置具有ED需求的JSON。我个人会移动这些链接'信息到元标记。否则,Ember-Data会尝试将它们放入名为“链接”的模型中,这可能不是您想要的。如果你打算将它们存储在一个单独的链接中。模特,那你所拥有的就好了。