在Rails中如何订购使用sort_by Ruby方法的记录集合?

时间:2014-12-16 19:09:14

标签: ruby-on-rails ruby ruby-on-rails-4 ruby-on-rails-3.2

我有一个User模型和Post模型,其中User有很多帖子。我需要通过last_date_modified订购帖子。以下代码会循环播放每个用户的帖子,根据状态对每个帖子进行分组,但不会通过last_date_modified对其进行排序。

<% @user.posts.uniq.group_by(&:status).sort_by { |s, e| s }.each do | status, posts | %>
    <% posts.each do |post| %>
        <%= post.created_at %>
        <%= post.title %>
        <%= post.description %>
    <% end %>
<% end %>

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

但你最好在控制器中执行此操作,而不是在视图中

@user.posts.order("updated_at DESC").uniq.group_by(&:status)...