我有一个打开db连接并返回它的函数。或者错误,如果发生了什么:
OpenDbConnection(connectionString string, logSql bool) (*gorm.DB, error) 在这个函数中,我使用的是记录器:
logger := zap.NewExample().Sugar()
defer logger.Sync()方法Sync()返回error,而我忽略了这个错误。
在这种情况下,最好的策略是什么?
我可以重写代码以避免linter错误,但我仍然忽略错误:
logger := zap.NewExample().Sugar()
defer func() {
_ = logger.Sync()
}()我可以返回错误,但是我有正确的db连接,我需要在调用函数中分析这个错误,以了解要做什么。
发布于 2019-08-31 18:40:59
您可以命名返回的错误变量,并在函数中的任何位置初始化。
检查此测试代码这里
OpenDbConnection(connectionString string, logSql bool) (db *gorm.DB, err error) {
logger := zap.NewExample().Sugar()
defer func() {
err = logger.Sync()
}()
// some logic here
return db, err
}https://stackoverflow.com/questions/57740428
复制相似问题