web 服务框架
This commit is contained in:
43
init/orm/orm.go
Normal file
43
init/orm/orm.go
Normal file
@@ -0,0 +1,43 @@
|
||||
package orm
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log/slog"
|
||||
"platform/init/env"
|
||||
"platform/init/logs"
|
||||
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/schema"
|
||||
)
|
||||
import "gorm.io/driver/postgres"
|
||||
|
||||
var DB *gorm.DB
|
||||
|
||||
func Init() {
|
||||
logger := logs.Default
|
||||
|
||||
dsn := fmt.Sprintf(
|
||||
"host=%s user=%s password=%s dbname=%s port=%s sslmode=disable TimeZone=Asia/Shanghai",
|
||||
env.DbName, env.DbUserName, env.DbPassword, env.DbName, env.DbPort,
|
||||
)
|
||||
|
||||
open, err := gorm.Open(postgres.Open(dsn), &gorm.Config{
|
||||
NamingStrategy: schema.NamingStrategy{
|
||||
SingularTable: true,
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
logger.Error("gorm 打开数据库失败", slog.Any("err", err))
|
||||
panic(err)
|
||||
}
|
||||
|
||||
sql, err := open.DB()
|
||||
if err != nil {
|
||||
logger.Error("gorm open db error: ", slog.Any("err", err))
|
||||
panic(err)
|
||||
}
|
||||
sql.SetMaxIdleConns(10)
|
||||
sql.SetMaxOpenConns(100)
|
||||
|
||||
DB = open
|
||||
}
|
||||
Reference in New Issue
Block a user