TojiTech No Programming, No Life.

Rails gemのkaminariでViewをBootstrap化する方法

皆さん、意外と知られていないまたは、別のgemを入れて対応しようとする方が多いような印象を受けます。

今回、Bootstrap v4のデザインでページネーションボタンを追加する方法をご紹介します。

こんな感じの表示

コントローラーと、ビューについてはこちらの記事から一部移植しています。
実装もそれぞれなので、場合によっては無限スクロールを導入するこをおすすめします。

下準備

gem 'kaminari'
bundle install
rails g kaminari:views bootstrap4

コントローラー

今回は、PostControllerを例にします。

.page(params[:page])
GETでURLに付いてくる?page=2の2などを読み取ります

.per(20)
1ページにいくつのデータ(記事)を表示させるかを制御します。

class PostsController < ApplicationController
  def index
    @posts = Post.page(params[:page]).per(20)
  end
end

ビュー

<% @posts.each do |post| %>
  <span><%= post.post_title %></span>
<% end %>
<%= paginate @posts %>

Profile

Yuki Tojima

RubyやPhp、JavaScriptまわりのことを徒然と記録に残す技術ブログです。

至らぬところもあると思いますが、見守っていただけると幸いです。

記事のリクエストや、間違いなどありましたら X (旧 Twitter) のDMなどでお気軽にご連絡ください。

ytojima @TojiTech
プロフィール画像