注意到 Time.now 返回的时间不正确(比美国东部时间提前 5 小时),即使配置似乎已设置为美国东部时间。
我能够获得正确 EST 的唯一方法是这样的:
#Ruby 1.8.7/Rails 2.2.2
t = Time.now - (3660 * 5)
est = t.strftime("%Y-%m-%d %H:%M:%S")
### environment.rb
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = 'Eastern Time (US & Canada)'
#### login_controller.rb
@new_login_attempt.last_login_date = Time.now.strftime("%Y-%m-%d %H:%M:%S")
@new_login_attempt.save
最佳答案
使用 Time.zone.now
而不是 Time.now
关于ruby-on-rails - Incorrect Time.now - 不遵守时区设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13979164/