数据校验组件提供了一些常用的快捷包方法,用于直接执行数据校验。

    接口文档https://godoc.org/github.com/gogf/gf/util/gvalid

    1. func CheckValue(ctx context.Context, value interface{}, rules string, messages interface{}, params ...interface{}) Error
    2. func CheckMap(ctx context.Context, params interface{}, rules interface{}, messages ...CustomMsg) Error
    3. func CheckStruct(ctx context.Context, object interface{}, rules interface{}, messages ...CustomMsg) Error
    4. func CheckStructWithData(ctx context.Context, object interface{}, data interface{}, rules interface{}, messages ...CustomMsg) Error

    简要说明:

    1. CheckValue方法用于单条数据校验,比较简单,方法详细介绍请看后续章节。
    2. CheckMap方法用于多条数据校验,校验的主体变量为map类型,方法详细介绍请看后续章节。
    3. CheckStruct方法用于多条数据校验:
      • 校验的规则来源于object参数及customRulescustomRules合并覆盖object中的校验规则)
      • 校验的变量为给定的object参数(注意会有struct属性默认值影响校验规则)
      • 方法详细介绍请看后续章节
    4. CheckStructWithData方法用于多条数据校验:
      • 校验的规则来源于object参数及rulesrules合并覆盖object中的校验规则)
      • 校验的变量为给定的data参数
      • 方法详细介绍请看后续章节
    5. Check*方法只有在返回nil的情况下,表示数据校验成功,否则返回校验出错的错误信息接口Error

    在所有的校验方法中,第一个参数都要求输入Context上下文变量参数,用于上下文变量的传递、校验功能的设定、后续的可扩展能力。该参数虽然直接传递nil也是可以的,但是为保证程序的严谨性,我们建议您当不知道传递什么或者没有特殊要求的时候传递context.TODO()或者context.Background()来替代。