pagination gem を使用して、顧客の注文をページ付けしています。データベースを介して関係を使用して注文を表示する必要がありました。
<table class="order-items">
<th>Date</th>
<th>Order No.</th>
<th>View Order</th>
<% @customer.orders.each do |order| %>
<tr>
<td><%= order.created_at.strftime("%d %b. %Y") %></td>
<td><%= order.id %></td>
<td><%= link_to 'Show', "../orders/#{order.id}" %></td>
</tr>
<% end %>
</table>
<p><%= will_paginate @orders %></p>
そして私のコントローラーのコード:
@customer = Customer.find(params[:id])
@order = @customer.orders
@orders = @order.paginate page: params[:page], order: 'title',
per_page: 5
この顧客がテストするために、6 つの注文を作成しました。私が抱えている問題は、ページネーション ページが下部 (2 ページ) に正しく表示されることですが、リストには 6 つの注文がすべて表示され、両方のページネーション ページに 6 つの注文がすべて表示されます。
他のすべてのページでページネーションを正常に機能させることができたので、そこに order.line_items.each コンストラクトがあるためだと思います-そのため、6つすべてが表示されます.わかりませんただし、これを修正する方法!どんな助けでも大歓迎です、ありがとう!