Validate
Overview
Validate runs struct-tag validation on structs.
Part of the validate package — Node.js analog: zod, joi.
Signature
go
func Validate(v any) errorCompare: Node.js · Standard Go · gox
js
schema.validate(data);go
if err := validator.New().Struct(v); err != nil {
return err
}go
import "github.com/sahilkhaire/gox/validate"
type signup struct {
Email string `validate:"required,email"`
Age int `validate:"gte=18"`
}
if err := validate.Validate(signup{Email: "a@b.com", Age: 20}); err != nil {
return err
}Example
go
import "github.com/sahilkhaire/gox/validate"
type signup struct {
Email string `validate:"required,email"`
Age int `validate:"gte=18"`
}
if err := validate.Validate(signup{Email: "a@b.com", Age: 20}); err != nil {
return err
}Tips
Import github.com/sahilkhaire/gox/validate and call Validate directly. See the comparison below for the standard library equivalent.
Standard library alternative
Use the standard library directly:
go
if err := validator.New().Struct(v); err != nil {
return err
}