我需要对数组进行分页。当我单击其他页面时,我看到第一页上显示的相同的25个项目。该网址为http://localhost:3000/?page=2
,但相同的25个项目。总共大约有100个。
这是我的控制器方法:
def index
@items = Array.new
API.items.all! do |i|
@items << i
end
@paginated_items = @items.paginate(per_page: 25)
end
这是我的html文件:
<%= will_paginate @paginated_items %>
<ul class="items">
<% @paginated_items.each do |i| %>
<li>Subject: <%= i.subject %>, ID: <%= i.id %></li>
<% end %>
</ul>
<%= will_paginate @paginated_items %>
我还在初始化程序中添加了require 'will_paginate/array'
。
答案 0 :(得分:2)
我认为你错过了页面:索引控制器中的params [:page],这就是will_paginate知道你现在的页面的方式
def index
@items = Array.new
API.items.all! do |i|
@items << i
end
@paginated_items = @items.paginate(page:params[:page],per_page:25)
end