我正在使用Ruby on Rails创建一个类似digg的站点,对项目进行排名(基于this algorithm)。我使用的是will-paginate gem列表中的项目。
问题是,分页只允许我根据表数据插入':order =>‘。我想使将分页排序的数字,这是使用一个函数计算基于表上的不同字段(例如,投票数,年龄小时)。
我该怎么做呢?
发布于 2010-02-14 22:57:45
根据the comments/documentation in the code的说法,您可以使用
Post.paginate_by_something为了使用
Post.find_all_by_something以获取要使用分页的项的集合。:order选项是设置项目顺序所必需的。
因此,对于您的问题,您可以创建一个自定义的find方法,使用您的算法添加一个排名列。使用:order选项对此排名进行排序。
发布于 2010-02-15 00:48:42
还可以在命名作用域上使用paginate方法。如果你为排序设置了一个作用域,你可以只做Article.ordered.paginate。
https://stackoverflow.com/questions/2260873
复制相似问题