我想通过降序排序users
。但是,当我添加.reverse
时,它会一次反转users
一页,而不是一起反转。
show_followers:
<%= 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
智能地命令,但它按升序排列。我希望最新的关注者出现在列表的顶部。
答案 0 :(得分:2)
在控制器操作中,您可能有一些看起来像这样的代码:@users = User.paginate(:page => params[:page])
。
您需要在该语句中添加相反的内容,因此它看起来像这样:@users = User.paginate(:page => params[:page]).order('id DESC')
(可能id
替换为created_at
)。
答案 1 :(得分:1)
@users = @user.followed_users.reverse.paginate(page: params[:page])
在分页之前在控制器级别反转