Open
Description
enums are stored as UPPERCASE strings in database for readability.
model "User" {
role = enum("member", "admin")
default = "member"
null = false
}
in go:
type UserRole string
const (
UserRoleAdmin UserRole = "ADMIN"
UserRoleMember UserRole = "MEMBER"
)
func (u UserRole) Value() (driver.Value, error) {}
func (u *UserRole) Scan(val any) error {}
type User struct {
Role UserRole
}
c.ChangeUser().SetRole(UserRoleAdmin)
in typescript
enum UserRole {
Admin = "ADMIN",
Member = "MEMBER",
}
interface User {
userRole: UserRole;
}
c.changeUser().setRole(UserRole.Admin)