我试图获取仅在今天,昨天和前天创建的记录。我的模型是访问者
对于今天创建的项目,我正在尝试
Visitor.where(created_at: Date.today)
然后对于昨天创建的项目,我正在尝试
Visitor.where(created_at: Date.yesterday)
但是它不起作用,因为Created_at列是时间戳的形式,而Date.today或昨天是日期格式。我怎样才能做到这一点。 而且我怎样才能获得前天创造的物品?
答案 0 :(得分:1)
#Today
Visitor.where("DATE(created_at) = ?", Date.today)
#Yesterday
Visitor.where("DATE(created_at) = ?", Date.yesterday)
可替换地:
#Today
Visitor.where(created_at: Date.today...Date.today+1)
#Yesterday
Visitor.where(created_at: Date.yesterday...Date.today)
参考:How can I find records from today, yesterday and so on with Ruby on Rails?
答案 1 :(得分:1)
要在一定时间后创建访问者,例如过去2天:
Visitor.where(["created_at > ?", 2.days.ago.midnight])