Kaminari:分页可移动项目

时间:2016-01-18 11:32:30

标签: ruby-on-rails ruby pagination kaminari

听起来应该是一个常见的问题,但我找不到任何信息。

设定: 我有一个分页的项目列表;每个项目都有remote: true "Delete" button,因此可以使用remote ajax请求删除任何项目。

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

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

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

1 个答案:

答案 0 :(得分:3)

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

大型动态网站处理此问题的方式是在给定结果后显示结果,而不是仅通过页面上任意数量的项目进行偏移。

很好的例子可能是Reddit,如果你转到第二页,你的网址就像https://www.reddit.com/?count=25&after=t3_41fk8j,其中最后一个值是上一页上一篇文章的哈希值。