package data import "reflect" type Login struct { Username string `db:"username" validate:"required,max=30"` Password string `db:"password" validate:"required,max=128"` } type User struct { Id int `db:"id" json:"id" validate:"isdefault"` Username string `db:"username" validate:"required,max=30"` Email string `db:"email" validate:"required,email,max=128"` Password string `db:"password" validate:"required,min=8,max=64"` } type Link struct { Id int `db:"id" json:"id" validate:"isdefault"` StreamId int `db:"stream_id" json:"stream_id" form:"stream_id" validate:"required,numeric"` Url string `db:"url" json:"url" form:"url" validate:"required,http_url,max=150"` Description string `db:"description" json:"description" form:"description" validate:"required,max=300"` } type Stream struct { Id int `db:"id" json:"id"` Title string `db:"title" json:"title"` Description string `db:"description" json:"description"` } func Models() map[string]reflect.Type { return map[string]reflect.Type{ "stream": reflect.TypeFor[Stream](), "stream_link": reflect.TypeFor[Link](), "user": reflect.TypeFor[User](), } }