在
application.rb
里设置相应的时区。config.time_zone = 'Eastern European Time'
# 可选配置——注意取值只能是 :utc 或 :local 中的一个(默认为 :utc)
config.active_record.default_timezone = :local
不要使用
Time.parse
。# 差
Time.parse('2015-03-02 19:05:37') # => 会假设时间是基于操作系统的时区。
# 好
Time.zone.parse('2015-03-02 19:05:37') # => Mon, 02 Mar 2015 19:05:37 EET +02:00
不要使用
Time.now
。# 差
Time.now # => 无视所配置的时区,返回操作系统时间。
# 好
Time.zone.now # => Fri, 12 Mar 2014 22:04:47 EET +02:00
Time.current # 结果同上,但更简洁