基本介绍

goframe 框架提供了功能强大、使用便捷、灵活易扩展的数据/表单校验组件,由 gvalid 组件实现。 gvalid 组件实现了非常强大的数据校验功能,内置了数十种常用的校验规则,支持单数据多规则校验、多数据多规则批量校验、自定义错误信息、自定义正则校验、自定义校验规则注册、支持 i18n 国际化处理、支持 struct tag 规则及提示信息绑定等等特性,是目前功能最强大的 Go 数据校验模块。

数据校验 - 图1提示

数据校验设计的灵感来源于经典的 PHP Laravel 框架 https://laravel.com/docs/8.x/validation 感谢 Laravel ❤️

使用方式

  1. import "github.com/gogf/gf/v2/util/gvalid"

接口文档

https://pkg.go.dev/github.com/gogf/gf/v2/util/gvalid

组件特性

gvalid 组件具有以下显著特性:

  • 内置数十种常见数据校验规则,支持大部分业务场景
  • 支持 Server 层及命令行组件自动化校验
  • 支持基础类型及复杂对象类型参数校验
  • 支持顺序校验、灵活的校验结果处理
  • 支持自定义校验错误提示
  • 支持结构体属性递归校验
  • 支持自定义校验规则
  • 支持 I18n 国际化特性

相关文档

📄️ 数据校验-校验规则GoFrame框架中的数据校验规则及其应用。GoFrame框架内置了多种常用的校验规则,支持开发者在处理数据时进行参数校验和结构体校验。文章详细讲解了不同情况下如何使用各种校验规则,包括必需参数、日期格式、数值范围、枚举值验证等,为开发者提供了灵活的校验机制。

📄️ 数据校验-校验对象使用GoFrame框架中的数据校验组件进行数据校验,包括校验对象的配置管理和链式操作等内容。通过详细的示例展示了单数据校验、结构体和映射的数据校验方法,帮助开发者快速掌握数据校验的使用技巧。

📄️ 数据校验-校验结果利用GoFrame框架进行数据校验,描述了gvalid.Error接口的实现及使用方法。通过不同方法获取校验错误信息,包括顺序性和非顺序性校验的影响。同时,示例演示如何获取校验错误中的第一条错误信息,为开发者提供实用指引。

🗃️ 数据校验-参数类型3 个项目

📄️ 数据校验-可选校验使用GoFrame框架进行数据校验,尤其是针对可选校验规则的使用。当校验规则中不包含required时,可选校验规则不会强制校验空字符串或nil值。文档提供了多个实际代码示例,展示了在Go语言中通过GoFrame框架实现可选数据校验的过程和注意事项,适合开发者在项目中应用。

📄️ 数据校验-递归校验GoFrame框架中数据校验组件的递归校验特性。通过示例代码展示了如何对结构体、切片及映射类型的数据进行嵌套校验,实现对复杂数据结构的有效验证。特别说明了在递归校验中空对象的处理方法,以及带有默认值的空对象将被视为已传递并被校验。

🗃️ 数据校验-自定义规则2 个项目

📄️ 数据校验-自定义错误在使用GoFrame框架的数据校验组件时,自定义错误提示并支持i18n国际化功能。通过结合i18n组件,可以方便地设置不同语言的错误信息。文中详细说明了如何配置英文和中文的i18n文件,以及如何通过中间件进行错误提示语言的设置,帮助开发者更高效地进行国际化处理。

📄️ 数据校验-方法介绍GoFrame框架中的数据校验功能,详细描述了包括New、Run、Clone、I18n、Bail、Ci等常用校验方法的使用。通过具体示例讲解如何使用这些方法进行有效的数据校验,并提供了定制化校验规则和错误提示的方法,帮助开发者更好地完成应用程序的数据校验工作。

📄️ 数据校验-常见问题在使用GoFrame框架进行数据校验时,Struct默认值对required规则的影响及其解决方案,包括使用指针类型绕过默认值影响、组合校验规则以及Assoc联合校验方法,以确保校验准确性。