• application.rb 里设置相应的时区。

    1. config.time_zone = 'Eastern European Time'
    2. # 可选配置——注意取值只能是 :utc 或 :local 中的一个(默认为 :utc)
    3. config.active_record.default_timezone = :local
  • 不要使用 Time.parse

    1. # 差
    2. Time.parse('2015-03-02 19:05:37') # => 会假设时间是基于操作系统的时区。
    3. # 好
    4. Time.zone.parse('2015-03-02 19:05:37') # => Mon, 02 Mar 2015 19:05:37 EET +02:00
  • 不要使用 Time.now

    1. # 差
    2. Time.now # => 无视所配置的时区,返回操作系统时间。
    3. # 好
    4. Time.zone.now # => Fri, 12 Mar 2014 22:04:47 EET +02:00
    5. Time.current # 结果同上,但更简洁