質問: Line.page(params[:page]) end html.erb <% @lines.reverse_each do |line| %> <%= link_to line.title, line_path(line.id) %> <%= line.name %> <%= line.content %> <% end %> ### 試したこと 配列にページネーションを使うみたいな記事をいくつか見たがまったくやり方がわからず・・・ ### 補足情報(言語/FW/ツール等のバージョンなど) cloud9 ruby v 2.3.0 rails 4.2.5
回答: Line.all行を消して(意味がないので) @lines = Line.reverse_order.page(params[:page]) 又は @lines = Line.order(created_at: :desc).page(params[:page]) にして reverse_eachをeachに戻せば、kaminariで普通に処理できるのでは無いでしょうか? 解説としては pagenateの前に逆順にしているか、pagenateの後に逆順にしているかの違いです。 reverse_eachの段階では1~21が選ばれていて、それが逆順になるので最新が表示されないのです。 なのでpageの前でreverse_orderなどで逆順にする必要があります。