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

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

func CheckValue(ctx context.Context, value interface{}, rules string, messages interface{}, params ...interface{}) Error 
func CheckMap(ctx context.Context, params interface{}, rules interface{}, messages ...CustomMsg) Error
func CheckStruct(ctx context.Context, object interface{}, rules interface{}, messages ...CustomMsg) Error
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()来替代。



  • No labels