0

私は現在、Rails 3.1 で will_paginate を使用して配列をページ分割しています。

#show のコントローラーで

 @items = ["item1", "item2", "item3" ....... "item100"]

 @items.shuffle!
 @items.paginate(:page => params[:page], :per_page => 5)

私が直面している問題は、各ページが表示されるたびに完全に異なって見えることです。つまり、アイテムの順序が異なります。たとえば、ページ 2 を表示し、[前へ] をクリックしてページ 1 に戻ると、ページ 1 には別のセットが表示されます。これは、コントローラーのシャッフルが原因であると確信しています。ページビューごとに新しい配列が生成されているようです。これを回避する方法はありますか?現在の @items をセッションに保存する可能性はありますか?

4

1 に答える 1

0

これを試して:

 @items ||= ["item1", "item2", "item3" ....... "item100"].shuffle!
 @items.paginate(:page => params[:page], :per_page => 5)
于 2013-03-26T17:47:34.193 に答える