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
	 wenyazhou.13
						wenyazhou.13