首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用不带paginate_array的Kaminari进行反向分页?

用不带paginate_array的Kaminari进行反向分页?
EN

Stack Overflow用户
提问于 2014-07-21 21:09:45
回答 1查看 577关注 0票数 1
代码语言:javascript
复制
< , 1, 2, 3, 4 ... 10, > 

*其中数字是页码,箭头显示分页视图的上一个和下一个

我想要得到:

代码语言:javascript
复制
<, 10, 9, 8, 7 ... 1, >

我的问题是我找不到任何可行的解决方案,因此我向你们寻求帮助。由于优化的原因,我想避免使用paginate_array。有没有一种方法可以简单地将分页从右翻到左?这样的事情在kaminari中是可能的吗?或者我应该切换到其他的分页方式吗?

EN

回答 1

Stack Overflow用户

发布于 2014-07-21 22:00:13

最后可以使用sql orderlimitoffset和ruby reverse。我尝试实现一些示例,但需要测试。

在模型中的某个地方,你有方法返回页面:

代码语言:javascript
复制
def users(page)
  # find right offset
  offset = if page.to_i == 1
           # if page number 1 offset be 0 
             0
           elsif page.to_i == 2
           # if page number 2 offset be 10
             10
           else
           # in another case offset must be page * 10
             page.to_i.pred * 10
           end
  # order :desc and reverse
  users.limit(10).offset(offset).order(created_at: :desc).reverse
end

limit 10 offset 0它类似于page(1).per(10)limit 10 offset 10它类似于page(2).per(10)。试着解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24865950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档