我有简单的分页方案

http://api/users?page=1

在第1页为用户提供
在我可以问下一页之后

http://api/users?page=2

等下一页

但是我有两个问题:

  • 我无法订购用户以显示他们从服务器到我的响应

  • [user1,user2,user3],但是当我尝试从数据库中获取时,例如,我可以得到[user2,user1,user3]。

    我尝试使用RestKit元数据属性
    @metadata.mapping.collectionIndex
    

    但是,每个请求都是独立工作的。接下来发生
    对于

    http://api/users?page=1我得到数组
    [user1, user2, user3] collectionIndex will be [1,2,3].
    

    但是然后我问下一页并得到数组
    [user4, user5, user6] collectionIndex also will be [1,2,3]
    

    所以在数据库中
    [user1, user4, user2, user5, user3, user6]
    

    这是不正确的。

    因此,第一个问题是:是否可以在不重置collectionIndex的情况下将collectionIndex用于分页请求?
  • 新到的数据中的问题

  • 我问

    http://api/users?page=1并拥有2位用户
    [user1, user2] in response
    

    在我问第二页并得到2个用户之后
    [user3, user4] in response
    

    所以我再次问page = 1,现在我有了用户[user01,user02]

    然后去增加页面索引,但是,在page = 2中,我得到了[user1,user2],在UI中的tableview中,我看到了al记录
    [user01, user02, user1, user2, user3, user4]
    

    然后页面不要求任何更改,因此用户无法理解页面工作吗?

    要修复它,我使用FetchRequestBlock,然后page = 1擦除所有用户-这是一个不好的解决方案。

    如何从服务器更正分页数据?

    最佳答案

  • 不,您需要将页码添加到商店中,并添加页面和索引的排序描述符。
  • 我想说您的解决方案还可以。我不确定我会使用提取请求块,但是当您从头开始分页时,您需要将所有项目标记为无效或将其删除。
  • 10-07 19:14
    查看更多