0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

kaminari まとめ

Last updated at Posted at 2021-11-03

開発環境

ruby 2.6.5
Ruby on Rails 5.2.5

使い方

gem 'kaminari' bundle install

page(params[:page]).per(10) が使える
 インスタンス = クラス.page(params[:page]).per(10) とすると
 10件のデータがインスタンスに入る
 params[:page]については後述

・一覧表示の下に <%= paginate @tasks %> を入力して準備完了
 一覧表示の下に First Previous 1 2 3 Next Last というリンクが出現する

・それぞれがリンクになっている
 例えば2のリンクを押すとURLに ?page=2 というクエリパラメーターが送られる

params[:page] はURLのクエリパラメーターの数字を引っ張るので
 リンクを押す度に page(params[:page]).per(10)
 params[:page] が選択した数字に変わるので画面が遷移出来る

注意点

page(params[:page]).per(10) は all メソッドと同時に使うものではない

・併せて order を使って表示順を変える際には
 page(params[:page]).per(10).order(〜) とする
 (原因不明だけど、order を先に持ってくるとテストが上手く行かなくなる)

params[:page] は初期値でどうやら1が入るみたいなので
  if params[:page].present? などで条件分岐しなくても大丈夫

参考にさせていただいた記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?