2

在发布这个问题之前,我从一个类似的问题在这里尝试了这个解决方案:
will_paginate function not rendering page links

我看到的不是 <- 1 2 3 ... N ->,而是消息“正在获取更多产品...”。

// 控制器
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=1看到“获取更多产品...”也看到“获取更多产品...”
, 但我看到 ← 上一页 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 回答