我的查找使用:offset
选项(例如,:offset => 50
),并使用此查找的页面进行分页。因此,第1页从ID为51的记录开始。
问题是前50条记录永远不会出现,因为查找不会“环绕”。也就是说,如果总共有200条记录,并且我:offset => 50
,则查找中的集合不包括记录1-50。是否有任何方法可以指示查找“环绕”,以便它包含所有200条记录 - 但是它们是按顺序排列的,它们是从记录#51开始的?
答案 0 :(得分:0)
偏移仅用于限制选择哪些记录;所以如果你想要一切,你不应该使用它。如果您的页面大小为50,并且您可以假设您的记录总是完全按顺序排列(可能不是一个好的长期假设),您可以指定如下订单:
Model.order('id < 50, id')
如果您正在同时加载这些记录,如果数据集仍然可管理,则在内存中旋转记录可能没问题:
Model.all.rotate(50)