Rails에서 kaminari 사용

프로그래밍 공부 일기



2020년 7월 31일 Progate Lv.226

개요



이 기사 로 취급한 gem의 카미나리를 설명한다. kaminari는 한 페이지에 게재하는 콘텐츠가 늘어날 때 여러 페이지로 나누어 표시시키는 페이지네이션을 간단하게 구현할 수 있다.


페이지네이션을 사용하는 것으로, 정보량이 많은 사이트를 정리할 수 있다는 것 뿐만이 아니라, 표시되는 항목이 일정수를 넘으면 자동적으로 다음의 페이지로 내용을 이행할 수도 있으므로 편리하다.

사용법



kaminari를 사용하기 위해 Gemfile을 편집합니다.

Gemfile
gem 'kaminari'

Gemfile을 편집한 후, 카미나리를 설치한다.

터미널
bundle install

이것으로 kaminari로 정의된 메소드나 기능을 사용할 수 있게 된다.

페이지 네이션 정의



컨트롤러와 뷰에서 페이지네이션이 표시되도록 한다.

controller 파일
def index
  @users = User.page(params[:page]).per(10)
end

뷰 파일
<%# ページネーションの表示 %>
<%= paginate @users %>

외형 변경



kaminari로 표시되는 페이지네이션은 뷰 안에서 CSS를 적용시킬 수 없다. 그래서, 외형을 바꾸고 싶은 경우는 app/view/kaminari 폴더를 만들고, 그 안에 페이지네이션 부분의 HTML이 기술되고 있도록(듯이) 터미널에서 이하의 커멘드를 실행한다.

터미널
$ rails g kaminari:views default

Bootstrap에 맞추기



bootstrap용으로 커스터마이즈 할 수도 있다. 이를 위해 다시 Gemfile을 변경하십시오.

Gemfile
gem 'kaminari-bootstrap', '~> 3.0.1'

Gemfile을 편집하면 설치한다.

터미널
bundle install

그리고, config/config/locales/kaminari_ja.yml 를 추가해 편집한다.

config/locales/kaminari_en.yml
ja:
  views:
    pagination:
      first: "&laquo; 最初"
      last: "最後 &raquo;"
      previous: "&lsaquo; 前"
      next: " &rsaquo;"
      truncate: "..."

좋은 웹페이지 즐겨찾기