From a7b5650324742bdd33bc7e2af131d91c464a3ec6 Mon Sep 17 00:00:00 2001 From: Blizzard Date: Sat, 26 Apr 2025 00:00:32 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=A0=B9=E6=8D=AE=E5=85=A8=E5=B1=80?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E4=B8=AD=E7=9A=84=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E8=BF=94=E5=9B=9E=E5=AF=B9=E5=BA=94=E7=9A=84?= =?UTF-8?q?=20*gorm.DB=20=E5=AE=9E=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- initialize/gorm.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 initialize/gorm.go diff --git a/initialize/gorm.go b/initialize/gorm.go new file mode 100644 index 0000000..5679d03 --- /dev/null +++ b/initialize/gorm.go @@ -0,0 +1,24 @@ +package initialize + +import ( + "gorm.io/gorm" + "sundynix-go/global" +) + +// Gorm 根据全局配置中的数据库类型返回对应的 *gorm.DB 实例。 +// 该函数通过检查 global.Config.System.DbType 的值来决定使用哪种数据库连接。 +// +// 返回值: +// - *gorm.DB: 返回对应数据库类型的 *gorm.DB 实例 +func Gorm() *gorm.DB { + switch global.Config.System.DbType { + case "mysql": + return GormMysql() // 返回 MySQL 数据库的 *gorm.DB 实例 + case "pgsql": + return GromPgsql() // 返回 PostgreSQL 数据库的 *gorm.DB 实例 + case "sqlite": + return GormSqlite() // 返回 SQLite 数据库的 *gorm.DB 实例 + default: + return GormMysql() // 默认返回 MySQL 数据库的 *gorm.DB 实例 + } +}