script/console
>> t = Time.at(1158609371)
=> Mon Sep 18 20:56:11 +0100 2006
>> t.zone
=> "BST"
>> s = Shop.find(:first)
>> s.creation_tsz = t.utc
=> Mon Sep 18 19:56:11 UTC 2006
>> s.creation_tsz.zone
=> "UTC"
>> s.save
>> s = Shop.find(:first)
>> s.creation_tsz
=> Sat Jan 01 19:56:11 UTC 2000
为什么它从2006年9月18日改为2000年1月1日?时区设置为在environment.rb中使用“UTC”。而且你知道我已经尝试了很多行s.creation_tsz = t.utc
的变体。一切都失败了。
答案 0 :(得分:2)
在数据库中,s.creation_tsz
是否可能只存储一个时间而不是日期部分,例如MySQL TIME type,而不是TIMESTAMP or DATETIME type。