LoginSignup
0
0

More than 3 years have passed since last update.

[Rails] kaminari で『ページネーション』機能追加

Posted at

はじめに

日々のアウトプットとしての記録です。
初学者なので記載に間違いなどがありましたら、指摘いただけると幸いです。

今回はRailsで『kaminari』を使ったページネーション機能を実装してみます!
...では、行きましょう!!

やりたいこと

・今回は、掲示板に1ページに10件としてページネーション機能の実装

・設定値はコントローラに記載するのではなくconfig ファイルに記載をする

kaminariをインストールして実装

はじめにGemfileにkaminariを追加

Gemfile
     gem 'kaminari'

追加したら bundle install を実行

ターミナル
$ rails g kaminari:config 
ターミナル
$ rails g kaminari:views  default  

を実行する。
設定ファイルを作成することにより編集可能になる。

次に、「config/initalizers/kaminari_config.rb」を編集

Kaminari.configure do |config|
  config.default_per_page = 10    # 指定したいページ数
  # 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

次に、「boards.controller.rb」を編集

boards_controller.rb

 def index
    @boards = Board.page(params[:page])
 end

  /// こっちでも出来る (今回は使わない)
  @boards= Board.page(params[:page]).per(10)

最後に「views/boards/index.html.erb」 に追加

index.html.erb

   <%= paginate @boards %>

ページネーションを表示させたいとこに追加する

 ・・・ 以上で終わり!

これで「kaminari」を使ってページネーション機能の実装完了!!!!!

まとめ

これからもアウトプットすることで理解を深めたいと思います。
最後までありがとうございました!

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