BeforeCreate before create hooks
(db *gorm.DB)
| 13 | |
| 14 | // BeforeCreate before create hooks |
| 15 | func BeforeCreate(db *gorm.DB) { |
| 16 | if db.Error == nil && db.Statement.Schema != nil && !db.Statement.SkipHooks && (db.Statement.Schema.BeforeSave || db.Statement.Schema.BeforeCreate) { |
| 17 | callMethod(db, func(value interface{}, tx *gorm.DB) (called bool) { |
| 18 | if db.Statement.Schema.BeforeSave { |
| 19 | if i, ok := value.(BeforeSaveInterface); ok { |
| 20 | called = true |
| 21 | db.AddError(i.BeforeSave(tx)) |
| 22 | } |
| 23 | } |
| 24 | |
| 25 | if db.Statement.Schema.BeforeCreate { |
| 26 | if i, ok := value.(BeforeCreateInterface); ok { |
| 27 | called = true |
| 28 | db.AddError(i.BeforeCreate(tx)) |
| 29 | } |
| 30 | } |
| 31 | return called |
| 32 | }) |
| 33 | } |
| 34 | } |
| 35 | |
| 36 | // Create create hook |
| 37 | func Create(config *Config) func(db *gorm.DB) { |
nothing calls this directly
no test coverage detected