全局里的 DB 初始化的 init 方法
来源:1-5 为grpc服务添加viper和zap
无解的游戏
2023-03-04 22:09:53
使用了
initializa.InitDB
之后,那么原来的global.go
里的init
的初始化的就冗余了
initialize.InitDB()
func init() {
// 配置打印 SQL 日志
newLogger := logger.New(
log.New(os.Stdout, "\r\n", log.LstdFlags), // io writer(日志输出的目标,前缀和日志包含的内容——译者注)
logger.Config{
SlowThreshold: time.Second, // 慢 SQL 阈值
LogLevel: logger.Info, // 日志级别
IgnoreRecordNotFoundError: true, // 忽略ErrRecordNotFound(记录未找到)错误
Colorful: true, // 启用彩色打印
},
)
// 后续需要将这些内容写到配置文件
dsn := "root:root@tcp(127.0.0.1:3306)/mxshop_user_srv?charset=utf8mb4&parseTime=True&loc=Local"
var err error
Db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{
// 设置全局 日志
Logger: newLogger,
NamingStrategy: schema.NamingStrategy{
SingularTable: true, // 取消表复数
},
})
if err != nil {
panic(err)
}
}
1回答
bobby
2023-03-06
后面第二阶段,也就是第6阶段后会重构这里的初始化的,这里先能确保运行,二阶段会讲解如何更加工程化
相似问题