2016-01-18 94 views
3

听起来像它应该是一个常见问题,但我找不到任何信息。Kaminari:分页可移动物品列表

设置: 我有一个分页的项目列表;每个物品都有一个remote: true"Delete" button,所以任何物品都可以通过remote ajax请求删除。

问题: 删除第一页上的多个项目后,转到下一页将导致您缺少一些项目。

E.g.对于每页10个项目的30个项目,删除第一页上的2个项目并转到第2页将导致您看到项目#12-22。 (因为项目10-12现在显示在第一页上,而不是我们刚删除的项目。)

我当前的想法是每次添加一个项目时,将下一项添加到列表的末尾被删除,所以我们每页总有10个项目,但我很想知道是否有更好/更简单的方法来处理这个问题。

回答

3

我认为这是正确的想法。删除一个对象后,你应该用ajax重新加载整个列表+分页。

大动态网站处理这个问题的方式是在给定的结果后显示结果,而不是仅仅由页面上的任何数量的项目抵消。

很好的例子可能是Reddit,如果你转到第二页,你的url将会像https://www.reddit.com/?count=25&after=t3_41fk8j那里最后一个值是前一页上过去的帖子的散列。

+1

是的,我结束了当前页面的最后一项抵消下一页。追加项目变得相当复杂,尤其是在无限滚动的情况下。 (重新渲染所有内容不是一种选择,而且资源密集型,无限滚动。 – ddgd