How can i add enum in gorm?
type RoleAllowed string const ( admin RoleAllowed = "admin" merchant RoleAllowed = "merchant" outlite RoleAllowed = "outlite" supplier RoleAllowed = "supplier" ) type ModelRole struct { ID string `json:"id" gorm:"primary_key"` RoleName RoleAllowed `json:"role_name" sql:"type:role_name"` RoleAccess pq.StringArray `json:"role_access" gorm:"type:text[]; not null"` CreatedAt time.Time `json:"created_at"` UpdatedAt time.Time `json:"updated_at"` } func (m *ModelRole) BeforeCreate(db *gorm.DB) error { m.ID = uuid.New().String() m.CreatedAt = time.Now().Local() return nil } func (m *ModelRole) BeforeUpdate(db *gorm.DB) error { m.ID = uuid.New().String() m.UpdatedAt = time.Now().Local() return nil } type carType string const ( SEDAN carType = "SEDAN" HATCHBACK carType = "HATCHBACK" MINIVAN carType = "MINIVAN" ) func (ct *carType) Scan(value interface{}) error { *ct = carType(value.([]byte)) return nil } func (ct carType) Value() (driver.Value, error) { return string(ct), nil } type MyTable struct { gorm.Model CarType carType `sql:"car_type"` } func (MyTable) TableName() string { return "my_table" }