他们似乎都做同样的事情。我只是担心一个人使用时区与另一个时区不同。
答案 0 :(得分:70)
请参阅Rails代码,第40行here。
# Returns Time.zone.today when <tt>Time.zone</tt> or <tt>config.time_zone</tt> are set, otherwise just returns Date.today.
def current
::Time.zone ? ::Time.zone.today : ::Date.today
end
因此,如果您定义了一个时区,您将获得一个分区日期,否则您将获得Date.today
。
BTW没有Date.now
答案 1 :(得分:12)
如果您进行比较,则应始终使用Date.current
这是因为如果您所在的时区可能与UTC不同,并且您的时区未设置,那么您可能会遇到Date.today == Date.tomorrow