0

我一直在使用允许检索给定组中具有最高 id 的记录的范围。我最近更改了将记录添加到数据库的方式,因此具有最高 id 的记录不一定是具有最新数据的记录;那将是最高的记录:end_time。

scope :latest_record_in_group, unique.select('max(id) as id')

其中 unique 如下:

scope :unique, group(:field_1, :field_2, :field_3, :field_4)

现在我需要的是选择具有最高 :end_time 的记录的 id,我很困惑。似乎我无法更改 activeRecord 如何决定组中的哪些记录被选为该组的代表。就目前而言,它似乎是默认情况下具有最高 :id 的记录。任何关于如何选择最高 :end_time 记录的见解将不胜感激。

编辑:消歧

4

1 回答 1

0

如果我理解您的问题,您应该使用

您正在使用的案例rails 3

Model.find(:all, :order => "end_time")

您正在使用的案例rails4

Model.order(:end_time).all
于 2013-11-14T21:38:16.853 回答