在给定当前DateTime的情况下,如何获取START和END的变量值?

时间:2015-05-24 16:21:53

标签: ruby-on-rails ruby date datetime

now = DateTime.now

我想要的是,给定当前的DateTime,是相对于东部时间填充start_of_dayend_of_day的变量。

例如,我在美国东部时间12:15发布此消息。

now = DateTime.now将返回“Sun,2015年5月24日16:15:00 +0000”。

我的最终目标是让变量start_of_dayend_of_day代表东部时间00:00:00和东部时间23:59:59。现在,ET是EDT(3月到11月之间的东部夏令时),因此与UTC不同4小时。 [从Novemeber到March,ET将是EST(东部标准时间),与UTC不同的5小时]。所以现在,使用EDT,我们需要

的值
start_of_day = "Sun, 24 May 2015 04:00:00 +0000"
end_of_day = "Mon, 25 May 2015 03:59:59 +0000"

如果给定DateTime.now,如何使用这些日期实现变量?

1 个答案:

答案 0 :(得分:4)

查看以下方法:

now = DateTime.now
now.beginning_of_day

now.end_of_day

这些将返回您需要的相应DateTime对象。

文档:

http://apidock.com/rails/DateTime/beginning_of_day http://apidock.com/rails/DateTime/end_of_day