2

この質問を投稿する前に、同様の質問からこの解決策を試しました:
will_paginate function not render page links

<- 1 2 3 ... N -> の代わりに、"Fetching more products..." というメッセージが表示されます。

// コントローラー
1. @posts は ActiveRecord::Relation
2. 6 レコードが結果として表示されるため、3 ページが予想されます

@posts = User.joins(entries: [{storage: :vote}, :category])
             .where("votes.count > ?", 0)
             .select("users.username AS username,
                       storages.id AS storage_id,
                       storages.title AS title, 
                       storages.content AS content, 
                       votes.count AS votes, 
                       categories.category_name AS category_name")
             .order("votes.count DESC")

@posts = @posts.page(params[:page]).per_page(2)

// 見る

<% @posts.each do |post| %>
   ...
   ...
<%end%>
<%= will_paginate @posts %>

http://localhost:3000/?page=1Fetching more products...」も「Fetching more products...」
と表示 されますが、← 前 1 2 3 次 → と表示されます。最後のページだけにページネーションを付けるのはなぜですか?http://localhost:3000/?page=2
http://localhost:3000/?page=3

RoR 4.0.0 を使用しています

Gemfile: gem 'will_paginate', '~> 3.0.5'
4

1 に答える 1

0

そのはず

@posts = @posts.paginate(params[:page], per_page: 2)

クイックルック http://skatara.blogspot.com/2015/02/pagination-in-rails-using-willpaginate.html

于 2015-02-11T20:55:04.413 に答える