Rubbyon Rails의 kaminari 가져오기 단계

8016 단어 kaminariRubyRails

Rails의 gem kaminari를 가져옵니다.


"Kaminari"는 Gemfile에 기재되어 있습니다.
Gemfile
gem 'kaminari'
설치하다.
명령행
$ bundle install
scaffold로 데이터 제작용 모형 등
명령행
$ rails g scaffold data_page data:text
옮기다
명령행
$ rails db:migrate
가상 데이터 입력
db/seed.rb
data = ['one','one','one','one','one','one','one','one','one','one','one','one','one']

for i in 1..100 do
  DataPage.create date:data.sample
end
명령행
$ rails db:seed
kaminari 프로필 만들기
명령행
$ rails g kaminari:config
구성 파일 편집
config/initializers/kaminari_config.rb
# frozen_string_literal: true
Kaminari.configure do |config|
  config.default_per_page = 10 #1ページに表示される数
  # config.max_per_page = nil #1ページの最大表示数
  config.window = 3            #現在のページの左右に表示する数
  # config.outer_window = 1
  # config.left = 0
  # config.right = 0
  # config.page_method_name = :page
  # config.param_name = :page
  # config.params_on_first_page = false
end
컨트롤러 수정
app/controllers/data_pages_controller.rb
  def index
    #修正前 @data_pages = DataPage.all
    @data_pages = DataPage.page params[:page]
  end
브라우저에 표시된 색인 파일 수정
app/views/data_pages/index.html.erb
<p id="notice"><%= notice %></p>

<h1>Data Pages</h1>

<

<table>
  <thead>
    <tr>
      <th>ID</th>
      <th>Date</th>
      <th>Create at</th>
      <th colspan="3"></th>
    </tr>
  </thead>

  <tbody>
    <% @data_pages.each do |data_page| %>
      <tr>
        <td><%= data_page.id %></td>
        <td><%= data_page.date %></td>
        <td><%= data_page.created_at %></td>
        <td><%= link_to 'Show', data_page %></td>
        <td><%= link_to 'Edit', edit_data_page_path(data_page) %></td>
        <td><%= link_to 'Destroy', data_page, method: :delete, data: { confirm: 'Are you sure?' } %></td>
      </tr>
    <% end %>
  </tbody>
</table>

<br>
<%= paginate @data_pages %>
<br>
<%= link_to 'New Data Page', new_data_page_path %>
브라우저에서 확인하면 이런 느낌이에요.

그럼!!

좋은 웹페이지 즐겨찾기