Help us understand the problem. What is going on with this article?

【Rails】kaminariを使用して基本的なページネーション機能を実装する

前提

bundlerを使用して、Gemfileでgemを管理していることを想定しています。

使い方

準備(インストール)

1.Gemfile内にgem kaminariを記述

# Gemfile 
gem 'kaminari'

2.kaminariをインストール

$ bundle install
# 「bundle」だけでもOK

設定

設定ファイル作成

1.設定ファイルを作成する

$ rails g kaminari:config

2.設定ファイルが作成される

config/initializersディレクトリ配下に「kaminari_config.rb」ファイルが作成されます。
作成されたファイルをいじることで、「kaminari」のデフォルト設定を変えることができます。

以下の記事に詳しく書かれていたので参考にしてみて下さい。
Railsライブラリ紹介: ページングを行う「kaminari」

kaminari_config.rb
# frozen_string_literal: true
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.params_on_first_page = false
end

Controller

Controllerでページパラメータ(params[:page])を取得します。

@users = User.order(:id).page params[:page]
# User.order(:id) ← Userモデル(usersテーブル)をid順にら並べている
# .page params[:page] ← 大切なのはここ。ページパラメータを取得している。

Views

views部分で以下のようにControllerで定義した変数名を使いましょう。

# @usersはControllerで定義した変数名
<%= paginate @users %>

以上で基本的なページネーションの機能が付けれるかと思います。

※上手く表示されていない時は、設定ファイルを保存しているかやサーバーの再起動をしているかなどをチェックしてみてください!

より詳しい使い方は以下を参考にしてみてください!
(表示するテキストを変えたり、テーマを変えたりとかもできます。)
【参考】https://github.com/kaminari/kaminari

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした