我想渲染部分按分数排序,然后按名称排序(如果多个玩家的分数相同)。
现在我正在使用它:
<%= render @players.sort_by { |p| [p.scored_vote(current_week), p.last_name] } %>
这是有效的,但它按升序对分数进行排序,我想按降序对它们进行排序。如何翻转分数的排序顺序,而不是名称,我仍然希望按升序排序?
谢谢!
答案 0 :(得分:13)
您的问题与渲染部分无关。你感兴趣的是sort_by方法的行为。 顺便说一下,这应该可以解决你的问题:
<%= render @players.sort_by { |p| [-p.scored_vote(current_week), p.last_name] } %>