如何使用Kaminari获取页数

kei*_*tis 19 kaminari

我正在迭代大量的模型对象,需要为性能/内存原因进行分页.

我想做这样的事情:

for i in 1..Person.num_pages
  Person.page(i).each do
    # work
  end
end
Run Code Online (Sandbox Code Playgroud)

显然我可以自己计算并做数学,但是有相当于num_pages吗?或者是否有更优雅的方式完成这项工作?

Edm*_*ake 40

使用total_pages.

是的,您可以使用它total_pages来检索模型中的总页数.

例如:

@blog_entries = Blog.all.page(1).per(20)
puts "total pages: #{@blog_entries.total_pages}"
Run Code Online (Sandbox Code Playgroud)

版本<0.14.0

在版本0.14.0之前,调用该方法num_pages而不是total_pages.

  • `num_pages`已在版本0.14.0中重命名为`total_pages`([commit](https://github.com/amatsuda/kaminari/commit/e79935c2d596e165be566f6d92eed8d5acd6a843)) (6认同)