【发布时间】:2011-09-09 00:07:47
【问题描述】:
我有一个 rails 3 应用程序,它按用户投票数显示用户提交的内容。我有一个名为“rank”的模型方法,可以计算每次提交的分数。目前,在列出所有提交时,我在 submits_controller.rb 中使用以下内容
def index
@submissions = Submission.all.sort_by(&:rank).reverse
end
但是,我想为此添加分页,而且似乎 'will_paginate' 或 'kamninari' 在这里都不能正常工作。这是因为我需要在分页之前按排名对数据库列进行排序。有没有更好的方法来表达我的查询,以便可以使用这些 gem 之一创建分页,或者您知道一个好的自定义分页解决方案吗?
谢谢!
【问题讨论】:
-
我不明白为什么这对你不起作用。使用 will_paginate,我尝试了以下操作,它似乎返回了预期的结果:
@submissions = Submission.all.sort_by(&:rank).reverse.paginate(:page => 1). -
我得到 NoMethodError: undefined method `paginate' for #<0x103212330>0x103212330>
标签: ruby-on-rails ruby-on-rails-3 sorting pagination