validation

package
v1.1.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 7, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

Package validation 提供数据验证功能和自定义验证规则

Package validation 提供数据验证功能和自定义验证规则

Package validation 提供数据验证功能和自定义验证规则

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetTranslator

func GetTranslator() ut.Translator

GetTranslator 获取翻译器实例

func GetValidator

func GetValidator() *validator.Validate

GetValidator 获取验证器实例

func InitCustomRules

func InitCustomRules()

InitCustomRules 初始化所有自定义验证规则

func Initialize

func Initialize()

Initialize 初始化验证器并注册自定义规则

func InitializeDomainValidation

func InitializeDomainValidation()

InitializeDomainValidation 初始化领域验证器

func IsValidIPv4

func IsValidIPv4(ip string) bool

IsValidIPv4 验证IPv4地址

func RegisterRule

func RegisterRule(tag string, rule Rule)

RegisterRule 注册自定义验证规则

func TranslateError

func TranslateError(err error) []string

TranslateError 翻译验证错误

func Validate

func Validate(s interface{}) error

Validate 执行结构体验证并返回错误信息

func ValidateChinaMobile

func ValidateChinaMobile(phone string) bool

ValidateChinaMobile 验证中国大陆手机号(可直接调用)

func ValidatePasswordStrength

func ValidatePasswordStrength(password string) (bool, string)

ValidatePasswordStrength 验证密码强度(可直接调用)

func ValidateVar

func ValidateVar(field interface{}, tag string) error

ValidateVar 验证单个变量

Types

type DomainValidator

type DomainValidator interface {
	Validate(domain interface{}) error
}

DomainValidator 领域模型验证器接口

func NewDomainValidator

func NewDomainValidator() DomainValidator

NewDomainValidator 创建领域验证器

type DomainValidatorImpl

type DomainValidatorImpl struct{}

DomainValidatorImpl 领域验证器实现

func (*DomainValidatorImpl) Validate

func (v *DomainValidatorImpl) Validate(domain interface{}) error

Validate 验证领域模型

type DomainValidatorRegistry

type DomainValidatorRegistry struct {
	// contains filtered or unexported fields
}

DomainValidatorRegistry 领域验证器注册表

func NewDomainValidatorRegistry

func NewDomainValidatorRegistry() *DomainValidatorRegistry

NewDomainValidatorRegistry 创建领域验证器注册表

func (*DomainValidatorRegistry) Get

Get 获取领域验证器

func (*DomainValidatorRegistry) Register

func (r *DomainValidatorRegistry) Register(name string, factory func() DomainValidator)

Register 注册领域验证器

type FieldError

type FieldError struct {
	Field   string
	Message string
	Tag     string
	Value   interface{}
}

FieldError 字段错误

func (FieldError) Error

func (e FieldError) Error() string

Error 返回错误信息

type Rule

type Rule struct {
	Validation    validator.Func               // 验证函数
	ErrorMessage  string                       // 默认错误消息
	TranslateFunc func(ut ut.Translator) error // 翻译器注册函数
}

Rule 定义自定义验证规则

type StructValidator

type StructValidator struct {
	// 需要验证的领域模型
	Model interface{}
	// 验证标签名称,默认为"validate"
	TagName string
	// 自定义错误消息映射 map[字段名]错误消息
	ErrorMessages map[string]string
}

StructValidator 结构体验证器

func NewStructValidator

func NewStructValidator(model interface{}) *StructValidator

NewStructValidator 创建结构体验证器

func (*StructValidator) Validate

func (v *StructValidator) Validate() error

Validate 执行验证

func (*StructValidator) WithErrorMessage

func (v *StructValidator) WithErrorMessage(field, message string) *StructValidator

WithErrorMessage 添加自定义错误消息

func (*StructValidator) WithErrorMessages

func (v *StructValidator) WithErrorMessages(messages map[string]string) *StructValidator

WithErrorMessages 批量添加自定义错误消息

func (*StructValidator) WithTagName

func (v *StructValidator) WithTagName(tagName string) *StructValidator

WithTagName 设置验证标签名称

type ValidationError

type ValidationError struct {
	Errors []FieldError
}

ValidationError 验证错误

func (ValidationError) Error

func (e ValidationError) Error() string

Error 实现error接口

type ValidationErrorWithCustomMessage

type ValidationErrorWithCustomMessage struct {
	validator.FieldError
	// contains filtered or unexported fields
}

ValidationErrorWithCustomMessage 带有自定义消息的验证错误

func NewValidationErrorWithCustomMessage

func NewValidationErrorWithCustomMessage(err validator.FieldError, message string) ValidationErrorWithCustomMessage

NewValidationErrorWithCustomMessage 创建带有自定义消息的验证错误

func (ValidationErrorWithCustomMessage) Error

Error 返回错误消息

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL