Skip to content
Node: schema.parse(data)github.com/sahilkhaire/gox/validate

ValidateSchema

Overview

ValidateSchema validates v against sch (map or struct).

If you are coming from Node.js, the closest pattern is schema.parse(data).

Signature

go
func ValidateSchema(sch Schema, v any) error

Compare: Node.js · Standard Go · gox

js
schema.parse(data);
go
// validate fields manually or map to struct tags
go
import "github.com/sahilkhaire/gox/validate"

sch := validate.Object(map[string]validate.Field{
	"name": validate.String().MinLen(2),
	"role": validate.String().OneOf("admin", "user"),
})
if err := validate.ValidateSchema(sch, map[string]any{"name": "alice", "role": "admin"}); err != nil {
	return err
}

Example

go
import "github.com/sahilkhaire/gox/validate"

sch := validate.Object(map[string]validate.Field{
	"name": validate.String().MinLen(2),
	"role": validate.String().OneOf("admin", "user"),
})
if err := validate.ValidateSchema(sch, map[string]any{"name": "alice", "role": "admin"}); err != nil {
	return err
}

Tips

Import github.com/sahilkhaire/gox/validate and call ValidateSchema directly. See the comparison below for the standard library equivalent.

Standard library alternative

Use the standard library directly:

go
// validate fields manually or map to struct tags

Back to validate package overview

MIT Licensed · Built for Node.js developers moving to Go