gf: github.com/gogf/gf/g/util/gvalid Index | Files

package gvalid

import "github.com/gogf/gf/g/util/gvalid"

Package gvalid implements powerful and useful data/form validation functionality.

数据/表单校验.

Index

Package Files

gvalid.go gvalid_check.go gvalid_check_map.go gvalid_check_struct.go gvalid_error.go gvalid_message.go

func SetDefaultErrorMsgs Uses

func SetDefaultErrorMsgs(msgs map[string]string)

替换默认的错误提示为指定的自定义提示 主要作用: 1、便于多语言错误提示设置; 2、默认错误提示信息不满意;

type CustomMsg Uses

type CustomMsg = map[string]interface{}

自定义错误信息: map[键名] => 字符串|map[规则]错误信息

type Error Uses

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

校验错误对象

func Check Uses

func Check(value interface{}, rules string, msgs interface{}, params ...interface{}) *Error

检测单条数据的规则:

1. value为需要校验的数据,可以为任意基本数据类型;

2. msgs为自定义错误信息,由于同一条数据的校验规则可能存在多条,为方便调用,参数类型支持 string/map/struct/*struct, 允许传递多个自定义的错误信息,如果类型为string,那么中间使用"|"符号分隔多个自定义错误;

3. params参数为联合校验参数,支持任意的map/struct/*struct类型,对于需要联合校验的规则有效,如:required-*、same、different;

func CheckMap Uses

func CheckMap(params interface{}, rules interface{}, msgs ...CustomMsg) *Error

检测键值对参数Map, rules参数支持 []string / map[string]string 类型,前面一种类型支持返回校验结果顺序(具体格式参考struct tag),后一种不支持; rules参数中得 map[string]string 是一个2维的关联数组,第一维键名为参数键名,第二维为带有错误的校验规则名称,值为错误信息。

func CheckStruct Uses

func CheckStruct(object interface{}, rules interface{}, msgs ...CustomMsg) *Error

校验struct对象属性,object参数也可以是一个指向对象的指针,返回值同CheckMap方法。 struct的数据校验结果信息是顺序的。

func (*Error) FirstItem Uses

func (e *Error) FirstItem() (key string, msgs map[string]string)

只获取第一个键名的校验错误项

func (*Error) FirstRule Uses

func (e *Error) FirstRule() (rule string, err string)

只获取第一个校验错误项的规则及错误信息

func (*Error) FirstString Uses

func (e *Error) FirstString() (err string)

只获取第一个校验错误项的错误信息

func (*Error) Map Uses

func (e *Error) Map() map[string]string

获得规则与错误信息的map; 当校验结果为多条数据校验时,返回第一条错误map(此时类似FirstItem)

func (*Error) Maps Uses

func (e *Error) Maps() ErrorMap

获得原始校验结果ErrorMap

func (*Error) String Uses

func (e *Error) String() string

将所有错误信息构建称字符串,多个错误信息字符串使用"; "符号分隔

func (*Error) Strings Uses

func (e *Error) Strings() (errs []string)

只返回错误信息,构造成字符串数组返回

type ErrorMap Uses

type ErrorMap map[string]map[string]string

校验错误信息: map[键名]map[规则名]错误信息

Package gvalid imports 11 packages (graph) and is imported by 3 packages. Updated 2019-07-14. Refresh now. Tools for package owners.