想象一下,我有一个名为Score
的模型,在第1天我插入5个分数,在第2,3和4天没有分数,在第5天又分4个分数。现在,我想比较今天插入的分数(让我们想象今天是第10天),而不是最后一次提交分数。获取上次插入的所有分数列表的最佳方式是什么?在这个例子中,它是第5天插入的分数列表,但我希望通过这种方式实现这一目标。
答案 0 :(得分:1)
试试这个:
class Score
def self.recent
# find the last score date
last_date = Score.where("created_at < ?", Time.now.beginning_of_day).
order("created_at DESC").first.try(:created_at)
return [] unless last_date.present?
where(:created_at => (last_date.beginning_of_day..
last_date.end_of_day))
end
end
现在您可以获得recent
分数:
Score.recent # list of Score objects