0

基本问题:如何在 Rails 3 中创建约 1000 个对象的分页列表,同时需要为列表中的每个对象创建链接目标?

我正在开发一个有大约 1000 个用户的项目,我想用分页来显示。网站是使用 Rails 3 制作的,如果可能的话,希望使用 Bootstrap 分页显示帮助。

这是最相关的代码块,我在其中创建列表并循环遍历所有用户以添加指向其个人资料的链接:

<ul class="list">   
<% @users.each do |user| %>
<li style="list-style-type: none"><a href="/users/<%= user.id %>" class="user"><%= user.name %></a></li>
<% end %>
</ul>

我正在考虑使用 will_paginate-bootstrap gem,但是当我需要遍历@users 为每个人添加一个链接时,我无法弄清楚如何实现它。我对 Rails 比较陌生,所以任何帮助都将不胜感激。

4

1 回答 1

0

首先,在用户控制器中,添加 will_paginate 代码以获取 @user 实例变量,如下所示@users = User.paginate(page: params[:page]):然后在您看来,添加<%= will_paginate @users, :renderer => BootstrapPagination::Rails %>. 你可以把它放在任何你想要显示分页的地方,所以放在列表的顶部或底部,或者如果你愿意的话,甚至两者都可以。然后在页面的某处,放置类似这样的内容,这将为之前在控制器中设置的 @users 变量中的每个用户呈现 _user.html.erb 部分:

<ul class="list">
  <%= render @users %>
</ul>

在该 _user.html.erb 文件中,您可以放置​​任何您想与每个用户一起显示的代码,例如指向用户显示页面<%= link_to user.name, user, :class => "user" %>或用户头像的链接。

于 2013-01-18T22:51:24.090 回答