繁体   English   中英

Rails获取带有时区的DateTime的Date部分

[英]Rails get Date part of DateTime with Time Zone

我正在尝试使用以下语法在rails 3中执行查询: CourseOrder.where("DATE(ordered_at) = ?", date)

我的问题是,rails在UTC中保存所有时间,因此在我的时区(+2)中,其0:33是其第4个时间,而在UTC中是该月的第3个时间。 有没有一种方法可以查询带有时区的DateTime的日期部分?

不要使用日期,而是这样做:

time = DateTime.civil_from_format(:local, 2011, 4, 9)
CourseOrder.where("ordered_at > ? AND ordered_at < ?", time - 1.day, time)

您正在存储一个日期时间,因此请查询而不是尝试使用日期,因为它不考虑时区。

通过更改我比较的值来解决问题。

我有一个Date值,现在我将一个日期值与一个日期值进行比较,这比将日期值与必须失败的datetime值进行比较要好。 感谢您带领我朝正确的方向前进

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM