【发布时间】:2019-08-12 16:05:25
【问题描述】:
我正在使用带有 sqlite 的 gorm。我的模型包括 gorm.Model 所以 gorm 为我处理 created_at, ...但默认情况下它使用本地时间保存所有审计日期(例如“2019-08-12 17:45:39.356009+02:00”)。有没有办法为自动生成的字段强制使用 UTC?行为是基于 gorm 本身还是基于底层 sql 数据库?
【问题讨论】:
我正在使用带有 sqlite 的 gorm。我的模型包括 gorm.Model 所以 gorm 为我处理 created_at, ...但默认情况下它使用本地时间保存所有审计日期(例如“2019-08-12 17:45:39.356009+02:00”)。有没有办法为自动生成的字段强制使用 UTC?行为是基于 gorm 本身还是基于底层 sql 数据库?
【问题讨论】:
如果您稍微阅读一下代码,您会发现delted_at、created_at 和updated_at 字段由函数gorm.NowFunclink 控制。
根据文档:
// gorm.NowFunc = func() time.Time {
// return time.Now().UTC()
// }
【讨论】:
SetNowFuncOverride。