Ruby on rails 为什么;创建于;保存到数据库的时间错误?
当我在生产服务器中检查Rails上的时间时Ruby on rails 为什么;创建于;保存到数据库的时间错误?,ruby-on-rails,Ruby On Rails,当我在生产服务器中检查Rails上的时间时 $ rails console production $ Time.now # good time 关于Mysql生产 mysql > select now(); # good time 但在我将任何记录保存到数据库后,“created_at”和“updated_at”字段距离当前时间为-2小时。这里怎么了 时间改变后,我重新启动了mysql,nginx。下一步我能做什么?是Mysql的Rails为这些字段定义了时间吗?这是因为您的数据保存在
$ rails console production
$ Time.now # good time
关于Mysql生产
mysql > select now(); # good time
但在我将任何记录保存到数据库后,“created_at”和“updated_at”字段距离当前时间为-2小时。这里怎么了
时间改变后,我重新启动了mysql,nginx。下一步我能做什么?是Mysql的Rails为这些字段定义了时间吗?这是因为您的数据保存在数据库中的时区是UTC。如果要将其更改为本地,请在
application.rb
中设置:
config.active_record.default_timezone = :local
如果您尚未:
config.time_zone = 'Vilnius'
你检查了rails时区?立陶宛有UTC+02:00-正好是你检测到的(无符号)时差。你救了我的命,兄弟。感谢您对我的居住地点进行调查,并解决了我3个多小时以来一直面临的问题:)