package classes import "gorm.io/gorm" var hookRegistrars []func(*gorm.DB) error // RegisterHook appends a GORM-callback registrant so later plans add files // without editing plugin.go Boot. func RegisterHook(fn func(*gorm.DB) error) { hookRegistrars = append(hookRegistrars, fn) } // RegisterHooks runs every registered hook against gdb. func RegisterHooks(gdb *gorm.DB) error { for _, fn := range hookRegistrars { if err := fn(gdb); err != nil { return err } } return nil }