From f50930ec7498605c0206ddc6e671492aed7cd3e0 Mon Sep 17 00:00:00 2001 From: maguodong Date: Mon, 30 Mar 2026 10:32:50 +0800 Subject: [PATCH] =?UTF-8?q?refactor(database):=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=A8=A1=E5=9E=8B=E7=9A=84=E9=92=A9=E5=AD=90?= =?UTF-8?q?=E5=87=BD=E6=95=B0=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 BeforeCreate 中的时间设置从直接赋值改为使用 scope.Set 方法 - 将 BeforeUpdate 中的时间设置从直接赋值改为使用 scope.Set 方法 - 移除 AfterDelete 钩子函数并注释掉 AfterFind 钩子函数 - 统一使用 GORM 的 scope 机制处理时间字段更新 --- database/base/base.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/database/base/base.go b/database/base/base.go index 1ae92ce..e6de47c 100644 --- a/database/base/base.go +++ b/database/base/base.go @@ -14,18 +14,18 @@ type TimeModel struct { } func (tm *TimeModel) BeforeCreate(scope *gorm.DB) error { - tm.CreateTime = gtime.Datetime() - tm.UpdateTime = gtime.Datetime() + scope.Set("create_time", gtime.Datetime()) + scope.Set("update_time", gtime.Datetime()) return nil } func (tm *TimeModel) BeforeUpdate(scope *gorm.DB) error { - tm.UpdateTime = gtime.Datetime() + scope.Set("update_time", gtime.Datetime()) return nil } -func (tm *TimeModel) AfterDelete(scope *gorm.DB) error { - tm.CreateTime = gtime.New(tm.CreateTime).String() - tm.UpdateTime = gtime.New(tm.UpdateTime).String() - return nil -} +//func (tm *TimeModel) AfterFind(scope *gorm.DB) error { +// tm.CreateTime = gtime.New(tm.CreateTime).String() +// tm.UpdateTime = gtime.New(tm.UpdateTime).String() +// return nil +//}