2012-05-06 7 views
0

私はRamin 3.2.0サイトのページ付けにKaminariを使用します。私は<% if !traveldeal.expired? %>でそれをフィルタリングしてビューに表示することから取引オブジェクトを隠しています。expiredはブール値です。 indexアクションのための私のコントローラのようにカミナリ:最初のページのオブジェクトが削除されても、オブジェクトは2ページ目から1ページ目に移動しません。

私はページあたり9 traveldealsを表示:

def index 
    @traveldeals = Traveldeal.order('created_at DESC').page(params[:page]).per(9) 
end 

当初、改ページは、ページごとに示す9 traveldealsでうまくいきました。しかし、最初のページからのtraveldealsを手動で有効期限に設定すると、期限切れに設定されたtraveldealsは最初のページに表示されなくなりますが、空白があり、2ページ目の要素が上に移動しません。

のみその他の関連情報は、私は改ページを表示するには、この次のコードを持っていることである。

<%= paginate @traveldeals %> 

私の質問:2ページ目からの要素がにシフトアップするように、私はそれを作るにはどうすればよい

期限切れに設定されている最初のページの要素を入力しますか?

ありがとうございました。

答えて

1

kaminariはビュー内であなたの条件を知りませんので、代わりにクエリ中に期限切れのアイテムを除外する必要があります。論理値がexpiredの場合、

@traveldeals = Traveldeal.where(:expired => false).order('created_at DESC').page(params[:page]).per(9) 
+0

この問題は解決しました。 – Huy

関連する問題