package models import ( "time" "github.com/google/uuid" ) type User struct { ID uuid.UUID `gorm:"column:id;type:uuid;default:gen_random_uuid()" yaml:"id"` Username string `gorm:"primaryKey;column:username;type:varchar(256);not null" yaml:"username"` Domain string `gorm:"primaryKey;column:domain;type:varchar(256);not null" yaml:"domain"` Password string `gorm:"column:password;type:varchar(256);not null" yaml:"password"` Home string `gorm:"column:home;type:varchar(256);not null;default:/var/lib/vmail/null" yaml:"home"` UID int `gorm:"column:uid;type:integer;not null;default:1000" yaml:"uid"` GID int `gorm:"column:gid;type:integer;not null;default:1000" yaml:"gid"` Active bool `gorm:"column:active;type:boolean;not null;default:true" yaml:"active"` CreatedAt time.Time `gorm:"column:created_at;type:timestamp;not null;autoCreateTime:nano;default:now()" yaml:"created_at"` UpdatedAt time.Time `gorm:"column:udpated_at;type:timestamp;not null;autoUpdateTime:nano;default:now()" yaml:"updated_at"` } func (o *User) TableName() string { return "users" }