[英]Pagination with Kaminari
我見過的Kaminari的所有示例在控制器動作中只有1個變量。
但是這是我的例子:
def index
@draft_item = @account.draft_item # only ever one
@in_force_item = @account.in_force_item # only ever one
@historical_items = @account.lo_items.historical # many of these
respond_to do |format|
format.html
end
end
這些都顯示在視圖上的表格中,我想對其進行分頁。 我需要在索引操作中首先將它們組合成1個數組嗎?
我在視圖上的循環是這樣的:
<% [@in_force_item, @draft_item, @historical_items].compact.flatten.each do |lo_item| %>
然后我有這樣的代碼:
<% if lo_item == @draft_item %>
這有可能並且仍然可以撥打上面的行>嗎?
多虧了以下答案,我才能夠做到這一點:
@total_items = Kaminari.paginate_array([@draft_item, @in_force_item, @historical_items].compact.flatten).page(params[:page]).per(10)
要使它全部起作用,必須全部放在一行上,這與下面的答案分成兩行的答案不同。
它是。 Kaminari具有paginate_array
@draft_item = @account.draft_item # only ever one
@in_force_item = @account.in_force_item # only ever one
@historical_items = @account.lo_items.historical
@total_items = [@in_force_item, @draft_item, @historical_items].compact.flatten
Kaminari.paginate_array(@total_items).page(params[:page]).per(10)
然后
<% @total_items.each do |lo_item| %>
<% end %>
<%= paginate @total_items %>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.