1

我想users按降序排列。但是,当我添加.reverse它时,它会一次反转users一个页面,而不是全部一起。

显示关注者:

<%= render @users.reverse %>
<%= will_paginate %>

用户/_user:

<%= link_to user.name, user %>

<% unless @user.nil? %>

  <% if request.path == "/users/#{@user.id}/listening_to" %>
    <br/>
    <span id="member_since"><%= "Listening Since" %> <%= @user.relationships.find_by_followed_id(user.id).created_at.strftime("%b. %d, %Y") %></span>
  <% end %>

  <% if request.path == "/users/#{@user.id}/listeners" %>
    <br/>
    <span id="member_since"><%= "Listener Since" %> <%= user.relationships.find_by_followed_id(@user.id).created_at.strftime("%b. %d, %Y") %></span>
  <% end %>

<% end %>

控制器:

@users = @user.followed_users.paginate(page: params[:page])

似乎 Rails 智能地按relationships_create我想要的顺序排序,但它是按升序排列的。我希望最近的关注者出现在列表的顶部。

4

2 回答 2

2

在控制器操作中,您可能有一些看起来像这样的代码:@users = User.paginate(:page => params[:page]).

您需要在该语句中放置相反的内容,因此它看起来像这样:(@users = User.paginate(:page => params[:page]).order('id DESC')可能id被替换为created_at)。

于 2013-03-15T21:17:10.610 回答
1
@users = @user.followed_users.reverse.paginate(page: params[:page])

在分页之前在控制器级别反转

于 2013-03-15T21:27:53.537 回答