何をしたか
何度も使っているgemではあるのですが、故になかなかしっかりreadmeも読んだことのないgem。kaminariを公式ドキュメントも読みながら、もう少し丁寧に実装してみました。
具体的には、
-
config
ファイルの生成 -
kaminari_themes
の利用
をしました。kaminariの実装そのものには深く込み入っていません。
設定ファイル kaminari_config.rbの生成
kaminariの表示件数は、こんな感じでずっと描いていたのですが、
@posts = Post.page(params[:page]).per(15)
諸々のコードを見ていくうちに、設定ファイルがありそうということに気づき、調べてみました。すると、公式のこちらの記載を見つけました。
rails g kaminari:config
↑このコマンドで、config/initializers/
配下にkaminari_config.rb
というファイルが生成されます。(同様のファイルならgenerateコマンドを使って生成しなくても良いみたいです。)
設定ファイルにはデフォルトでこんな内容が書かれています。
Kaminari.configure do |config|
# config.default_per_page = 25
# config.max_per_page = nil
# config.window = 4
# config.outer_window = 0
# config.left = 0
# config.right = 0
# config.page_method_name = :page
# config.param_name = :page
# config.max_pages = nil
# config.params_on_first_page = false
end
よく使うオプションが一通りそろっているみたいです。
この中のdefault_per_page
を
config.default_per_page = 10
にすれば、表示件数がデフォルトで調整できる様になりました。
見た目の変更について
見た目については、以下のコマンドで設定できる様でした。
$ rails g kaminari:views テーマ名
この、「テーマ名」の部分には、gem kaminariとは別のページにライブラリがあって、そこから選択できる様です。
今回はBootstrap4
&slim
でテーマを適用したかったので、こちらのコマンドを実行しました。
$ rails g kaminari:views bootstrap4 -e slim
感想等
仕事場で見かけたpagenate array
や、以前作成したけど没になったajaxによるページネーションもいつか調べて作ってみたいです。