32 lines
687 B
Go
32 lines
687 B
Go
package internal
|
|
|
|
import (
|
|
"time"
|
|
|
|
"git.echol.cn/loser/lckt/config"
|
|
"gorm.io/gorm"
|
|
"gorm.io/gorm/logger"
|
|
"gorm.io/gorm/schema"
|
|
)
|
|
|
|
var Gorm = new(_gorm)
|
|
|
|
type _gorm struct{}
|
|
|
|
// Config gorm 自定义配置
|
|
// Author [SliverHorn](https://github.com/SliverHorn)
|
|
func (g *_gorm) Config(general config.GeneralDB) *gorm.Config {
|
|
return &gorm.Config{
|
|
Logger: logger.New(NewWriter(general), logger.Config{
|
|
SlowThreshold: 200 * time.Millisecond,
|
|
LogLevel: general.LogLevel(),
|
|
Colorful: true,
|
|
}),
|
|
NamingStrategy: schema.NamingStrategy{
|
|
TablePrefix: general.Prefix,
|
|
SingularTable: general.Singular,
|
|
},
|
|
DisableForeignKeyConstraintWhenMigrating: true,
|
|
}
|
|
}
|