LoginSignup
2
0

More than 3 years have passed since last update.

kaminariにもう少しだけ詳しくなってみた。kaminari_themesの使用、configファイルの生成

Last updated at Posted at 2021-01-07

何をしたか

何度も使っている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コマンドを使って生成しなくても良いみたいです。)

設定ファイルにはデフォルトでこんな内容が書かれています。

config/initializers/kaminari_config.rb
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

実際に、できたファイルがこちらです。
Image from Gyazo

感想等

仕事場で見かけたpagenate arrayや、以前作成したけど没になったajaxによるページネーションもいつか調べて作ってみたいです。

2
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
2
0