我正在拉小时数据,缓存它,然后在javascript卷轴中使用该数据。无论如何。这是主要问题。我正在使用:
config.time_zone = 'Eastern Time (US & Canada)'
好的看起来很好,当我这样做时:
Entry.first.created_at #datetime -0500
看起来很好,除非我使用以下范围
scope :hourly, lambda {|h|
g = DateTime.current.beginning_of_day + h.hours
where(created_at: g..g+1.hours)
}
scope :hourly_by_date, lambda {|h,date|
g = DateTime.parse(date + " 00:00:00 Eastern Time (US & Canada)") + h.hours
where(created_at: g..g+1.hours)
}
scope :hours_ago, lambda {|h|
g = DateTime.current.beginning_of_hour - h.hours
where(created_at: g..g+1.hours)
}
它显示的东西说它是在午夜之前/之后创建的,当时我在下午6:06(-0700)创建了记录 这令人沮丧,我可以使用一些指导。
感谢。
答案 0 :(得分:0)
如何将日期时间转换为utc并将值与数据库进行比较
scope :hourly, lambda {|h|
g = (DateTime.current.beginning_of_day + h.hours).utc
where(created_at: g..g+1.hours)
}
scope :hourly_by_date, lambda {|h,date|
g = (DateTime.parse(date + " 00:00:00 Eastern Time (US & Canada)") + h.hours).utc
where(created_at: g..g+1.hours)
}
scope :hours_ago, lambda {|h|
g = (DateTime.current.beginning_of_hour - h.hours).utc
where(created_at: g..g+1.hours)
}