我有一个名为event的模型,带有time属性。我将它设置为Time.now
,并且我在保存之前将时间记录在对象上,在当前时间之后记录一两秒,如预期的那样。但是一旦对象被保存然后在数据库中找到,时间就不同了,日期部分是2000年1月1日。是什么造成了这个,我该怎么做才能确保我的时间得到正确保存?编辑:列类型是时间,数据库是SQLite。
答案 0 :(得分:3)
听起来您可能正在保存time
对象而不是date
对象。
有效记录可让您使用time
,date
和datetime
个对象。
但是,如果您使用的是time
或date
对象,它们仍然有点(解释它的方式不好,请参阅下面的链接响应以获取更多详细信息)完整datetime
个对象。当您阅读它们时,日期将出现在time
个对象上(通常为1月1日和2000年)。
我可以做些什么来确保我的时间得到正确保存?
如果保存/读取完整datetime
对此字段很重要,您可能需要考虑更改代表您要使用的模型的迁移:
object.datetime
。 。 。而不是:
object.time
有关详细信息,请参阅此回复:https://stackoverflow.com/a/3929047/1026898