使用UTCTime使用SQLite虽然我在耶索德模型使用UTCTime
场,我得到以下错误:在耶索德
PersistMarshalError "field timestamp: Expected UTCTime, received PersistText \"09:18:07\""
我使用SQLite来存储我的数据库。我的模型看起来如下:
Myobject
timestamp UTCTime default=CURRENT_TIME
otherfield Text
请注意,该错误在使用和不使用默认值时都会发生。
我选择的Myobject
-entities名单如下:
myobjects <- selectList [] [Desc MyobjectTimestamp]
使用的MyobjectOtherfield
代替MyobjectTimestamp
也没有帮助,这是有道理的,因为所有的数据被取出,因此无论如何编组。
类似的问题已被要求here,但答案并没有帮助我。
在使用SQLite时,如何在Yesod中使用UTCTime
?
编辑: 错误中提到的PersistText \"09:18:07\"
是字段默认的值。
不,该值是作为默认值插入的。那我会在那里放置那个功能?我可以改变编组的方式吗? –
至于默认值,我不知道。我所知道的是,时间戳中的值应该如下所示:'2013-10-25 10:16:32.1627238 UTC'被Yesod接受为UTCTime值。 你应该参考SQLite的文档来获得这样的时间戳。 – RobertDiep
当我以该格式输入日期时,确实有效,谢谢!将它包含在你的答案中,如果没有人解释为什么默认不起作用,我会接受你的答案。 –