ページネーションとは
投稿一覧などにすべて投稿されてたものが表示されると、読み込みに時間がかかってしまうため、
ページネーション機能を使って、1つのページに表示される数を制限し、重くならないようにしていこうと思います!
メリット
・読み込みが速くなる!
kaminariをインストールする
早速使えるように設定していきましょう。
ページネーションと使うには「kaminari」とうgemファイルを使っていきます。
Gemfile
:
:
gem 'kaminari','~> 1.2.1' #最後尾に記述
bundle installインストールしていきます。
$ bundle install #大事です
kaminariの設定ファイルを作成します。
$ rails g kaminari:config
kaminariがページャで利用するテンプレートを作成します。
$ rails g kaminari:views default
以上で使えるように設定完了です。
使い方
使い方についてです。
まずコントローラー
def index
@books = Book.all
end
下記のように変更
def index
@books = Book.page(params[:page]).per(5) #5件だけ表示できます。
end
次にビュー
<%= paginate books %>
を記述する
<% books.each do |book| %>
:
:
<% end %>
<%= paginate @books %> #これを記述すると表示されます。
これでOK!