fix: skip AfterInitialize
This commit is contained in:
parent
d7064f138a
commit
e0824aa1a5
17
gorm.go
17
gorm.go
@ -130,16 +130,20 @@ func Open(dialector Dialector, opts ...Option) (db *DB, err error) {
|
||||
return isConfig && !isConfig2
|
||||
})
|
||||
|
||||
var skipAfterInitialize bool
|
||||
for _, opt := range opts {
|
||||
if opt != nil {
|
||||
if applyErr := opt.Apply(config); applyErr != nil {
|
||||
return nil, applyErr
|
||||
}
|
||||
//defer func(opt Option) {
|
||||
// if errr := opt.AfterInitialize(db); errr != nil {
|
||||
// err = errr
|
||||
// }
|
||||
//}(opt)
|
||||
defer func(opt Option) {
|
||||
if skipAfterInitialize {
|
||||
return
|
||||
}
|
||||
if errr := opt.AfterInitialize(db); errr != nil {
|
||||
err = errr
|
||||
}
|
||||
}(opt)
|
||||
}
|
||||
}
|
||||
|
||||
@ -187,6 +191,9 @@ func Open(dialector Dialector, opts ...Option) (db *DB, err error) {
|
||||
if db, _ := db.DB(); db != nil {
|
||||
_ = db.Close()
|
||||
}
|
||||
|
||||
// DB is not initialized, so we skip AfterInitialize
|
||||
skipAfterInitialize = true
|
||||
return
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user