Files
valid/doc.go

32 lines
826 B
Go
Raw Permalink Normal View History

// Package valid provides struct validation backed by [github.com/go-playground/validator/v10].
//
// Create a validator with [New]:
//
// v := valid.New()
//
// Validate a struct:
//
// type CreateUserRequest struct {
// Name string `validate:"required"`
// Email string `validate:"required,email"`
// Age int `validate:"min=18,max=120"`
// }
//
// err := v.Struct(req)
// if err != nil {
// // err is a *xerrors.Err with code ErrInvalidInput.
// // Use errors.As to inspect it.
// }
//
// Use Spanish messages:
//
// v := valid.New(valid.WithMessageProvider(valid.SpanishMessages))
//
// Use a custom message provider:
//
// type myMessages struct{}
// func (m myMessages) Message(field, tag, param string) string { ... }
//
// v := valid.New(valid.WithMessageProvider(myMessages{}))
package valid