2
我剛剛從Persistent from Yesod開始,已經打到我的第一個路障。如何忽略將由數據庫填充的字段
share [mkPersist sqlSettings, mkMigrate "migrateAll"] [persistLowerCase|
User
email String
createdAt UTCTime Maybe default=CURRENT_TIME
updatedAt UTCTime Maybe default=CURRENT_TIME
deriving Show
|]
u <- insert $ User "[email protected]" Nothing Nothing
我來自Rails背景,就像他們所倡導的架構設計慣例。在這種特殊情況下,每個表都有一個created_at
和updated_at
時間戳。但是,是否有任何方法可以不爲每個將要創建的對象指定createdAt
和updatedAt
字段?
不是我所知道的。但是你總是可以定義一個幫助函數,它需要一個電子郵件地址並返回一個填充了時間字段的'IO User'(你需要'IO'來獲取當前時間)。另一種解決方案:寫一個觸發器。 – hao