【Ruby on Rails】kaminariとbootstrap4で日本語に対応したページネーションを実装する。
4104 ワード
はじめに
kaminariとbootstrap4でお洒落なページネーションを簡単に実装する方法をまとめました。
[前提]
bootstrap4がインストールされている
使い方
準備(インストール)
#Gemfile
gem 'kaminari'
gem 'bootstrap4-kaminari-views'
bundle install
#「bundle」だけでもOK
設定
日本語の設定(任意)
#Gemfile
gem 'kaminari'
gem 'bootstrap4-kaminari-views'
bundle install
#「bundle」だけでもOK
kaminariの日本語設定用ファイルを作成
config/locales/kaminari_ja.yml
ja:
views:
pagination:
first: "« 最初"
last: "最後 »"
previous: "‹ 前"
next: "次 ›"
truncate: "..."
実装
Controller
Controllerでページパラメータ( page(params[:page]) )を取得
@movies = Movie.where(status: "公開中").page(params[:page]).per(10)
#Movie.where(status: "公開中") ← Movieモデルからstatusが"公開中"のレコードを抽出
#page(params[:page]).per(10) ← ページパラメータを取得(10件毎)
※全件取得する場合は モデル名.all で指定
@movies = Movie.all.page(params[:page]).per(10)
View
Controllerで指定した変数を指定
#paginate @movies ← 変数 movies の中身を10件毎に表示
#theme: 'twitter-bootstrap-4 ← 使用したいテーマを指定
<%= paginate @movies, theme: 'twitter-bootstrap-4'%>
表示
※上手く表示されない方は
- サーバーの再起動
- 設定ファイルの確認
- perの設定(データ数以上のper値を設定するとページネーションが表示されません)
を確認してみてください!
参考
https://github.com/KamilDzierbicki/bootstrap4-kaminari-views
Author And Source
この問題について(【Ruby on Rails】kaminariとbootstrap4で日本語に対応したページネーションを実装する。), 我々は、より多くの情報をここで見つけました https://qiita.com/kamada-enginner/items/b3d47c993853e512fb72著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .