2012-05-04 34 views
16

我正在遍歷大量的模型對象,並且出於性能/內存原因需要分頁。如何使用Kaminari獲取頁數

我想要做這樣的事情:

for i in 1..Person.num_pages 
    Person.page(i).each do 
    # work 
    end 
end 

顯然,我可以得到數和做數學題我自己,但有NUM_PAGES的等效? 還是有一個更完美的方式來做到這一點?

回答

34

是的,您可以使用total_pages(或0.14.0版本之前的num_pages)檢索模型中的頁面總數。

例如:

@blog_entries = Blog.all.page(1).per(20) 
puts "total pages: #{@blog_entries.total_pages}" 
+5

'num_pages'已被重命名爲'total_pages'在0.14.0版([提交](https://github.com/amatsuda/kaminari/commit/e79935c2d596e165be566f6d92eed8d5acd6a843)) – ciastek

+0

如果您使用默認的'per',只需執行'Blog.all.page(1).total_pages' –