Rails显示按时间戳排序的消息

时间:2014-11-19 17:34:58

标签: ruby-on-rails

使用Rails,我有一个"消息"每个类都有一个记录消息发送时间的时间戳。 (created_at)

我想在div标签中显示所有这些消息,按时间戳排序,循环如下:

<% @messages.each do |message| %>

我不知道如何通过created_at时间戳对它们进行排序。

1 个答案:

答案 0 :(得分:2)

只需查询这些@messages,然后按created_at属性

进行排序
# controller:
@messages = Message.order("created_at DESC").all

但是,如果你觉得你想在控制器中使用它,那么它将是:

# controller:
@messages = Message.all.sort_by {|m| m.created_at }