From 3b1d1580a171313bd41c2fd4515b1f405ccee004 Mon Sep 17 00:00:00 2001 From: huang <1724659546@qq.com> Date: Sun, 21 Sep 2025 14:22:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dgorm=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=88=9B=E5=BB=BA=E6=97=A0=E7=94=A8=E5=A4=96=E9=94=AE=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/core/application.go | 1 - internal/infra/database/postgres.go | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/core/application.go b/internal/core/application.go index 63c8db1..174b434 100644 --- a/internal/core/application.go +++ b/internal/core/application.go @@ -261,6 +261,5 @@ func initStorage(cfg config.DatabaseConfig, logger *logs.Logger) (database.Stora if err := storage.Migrate(models.GetAllModels()...); err != nil { return nil, fmt.Errorf("数据库迁移失败: %w", err) } - return storage, nil } diff --git a/internal/infra/database/postgres.go b/internal/infra/database/postgres.go index 1933d6b..c5df1b3 100644 --- a/internal/infra/database/postgres.go +++ b/internal/infra/database/postgres.go @@ -70,6 +70,9 @@ func (ps *PostgresStorage) Connect() error { sqlDB.SetMaxIdleConns(ps.maxIdleConns) sqlDB.SetConnMaxLifetime(time.Duration(ps.connMaxLifetime) * time.Second) + // gorm会根据字段名自动创建外键约束, 但触发器Task的PlanID是不存在的, 所以需要关闭, 这个关闭对 + ps.db.DisableForeignKeyConstraintWhenMigrating = true + ps.logger.Info("PostgreSQL数据库连接成功") return nil }