我一直在尝试正确设置分页,但遇到任何教程并使其正常工作时遇到问题。使用will_paginate正确设置分页
我基本上想要设置的是,当用户选择他们想要出现在页面上的公司数量时,以下循环分页给出了每个页面上给定数量的公司。如果用户没有选择特定数量的公司/页面,则会设置默认值。
如果任何人都可以给我一个正确的方向推动,那将非常感激。
查看
<ul class="list-group">
<%= @comps.find_each do |comp| %>
<li class="list-group-item">
<div class="row">
<div class="span12">
<p style="font-size: 1.5em"><strong><%= link_to comp.name, comp %></strong></p>
<hr class="divider">
<div class="row">
<div class="span6">
<p><strong>Primary Field:</strong> <%= comp.primary_field %></p>
<p><strong>Description:</strong> <%= truncate(comp.description, length: 150) { link_to "Read More", comp, :target => "_blank"}%>
</p>
</div>
<div class="span5">
<% if signed_in? %>
<p><% if !(current_user.favorites.include? comp) %>
<%= link_to 'Favorite',
favorite_company_path(comp, type: "favorite"),
class: "btn btn-primary",
method: :put%>
<% else %>
<%= link_to 'Unfavorite',
favorite_company_path(comp, type: "unfavorite"),
class: "btn btn-danger",
method: :put%>
<% end %></p>
<% end %>
<p><strong>Website:</strong> <%= auto_link(comp.website, :html => { :target => '_blank' })%></p>
<p><strong>Location:</strong> <%= comp.address %></p>
</div>
</div>
</div>
</div>
</li>
<% end %>
<%= will_paginate @comps%>
</ul>
控制器(其中列表页面处理)的列表页
class DynamicPages < ActiveRecord::Base
self.per_page = 5
end
如果您在控制器中使用此代码 '@comps = Comps.paginate(:page => params [:page],:per_page => params [:count])' 然后,在视图中使用'<%= will_paginate @comps%>' 并且在模型中设置'self.per_page = 10'来设置'params [:count]'没有被选中 – robzdc
我真的很接近解决这个问题,但还有一个问题。请参阅以下答案的评论。我还更新了一些代码。 – Scalahansolo