2017-02-27 91 views
1
@items = @cats + @dogs + @birds 
@pag_items = Kaminari.paginate_array(@items).page(params[:page]).per(9) 

puts @pag_items.count 
6 

@items数组有23个项目。
为什么@pag_items数组只保存6个项目?Kaminari不尊重.per()设置

如果我将它设置为5或4,它将保持那么多。但超过6它不会。

谢谢!

+0

你正在做一个'把@ items.count'是一个错字? – Swards

+0

什么是'params [:page]'?如果它等于3,则会得到6个最后的元素。 – MikDiet

+0

params [:page]是1. –

回答

2

你可能已经使max_per_page设置:

Kaminari.configure { |s| s.max_per_page = 6 } 
@items = (1..23).to_a 
# => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23] 
@pag_items = Kaminari.paginate_array(@items).page(1).per(9) 
# => [1, 2, 3, 4, 5, 6] 
+0

谢谢。我不记得为kaminari设置初始化程序,但我有一个设置,并没有注意到它。实际上它正在设置“max_per_page = 6”。 –

相关问题