尝试对我的标签显示页面上的文章列表(我的案例中的想法)进行分页。所以我列出了所有用“loremipsum”标记的想法。问题是:per_page => 3似乎没有生效。所有的想法都出现了(我有4个用于标记“loremipsum”)并且没有错误。分页链接也显示在页面底部(但第2页不起作用)。
tags_controller:
def show
@tag = Tag.find_by_name(params[:id])
@ideas = @tag.ideas.all.paginate(:per_page => 3, :page => params[:page])
end
在show.html.erb
中 <% @tag.ideas.each do |idea| %>....<% end %>
<%= will_paginate @ideas %>
在我的想法列表页面分页工作正常,所以没有线索。 任何帮助非常感谢。提前谢谢!
答案 0 :(得分:1)
我建议您在视图中使用@ideas.each
,而不是@tag.ideas.each
。
<% @ideas.each do |idea| %> ... <% end %>
<%= will_paginate @ideas %>
也就是说,我相信你遇到的问题是因为你没有迭代你应用分页的同一个集合。虽然@ideas
会分页,但@tag.ideas
不会。
答案 1 :(得分:0)
替换此行
@ideas = @tag.ideas.all.paginate(:per_page => 3, :page => params[:page])
与
@ideas = @tag.ideas.paginate(:per_page => 3, :page => params[:page])
我相信你不需要all
。