goframe框架提供了功能强大、使用便捷、灵活易扩展的数据/表单校验组件,由gvalid组件实现。gvalid组件实现了非常强大的数据校验功能,内置了数十种常用的校验规则,支持单数据多规则校验、多数据多规则批量校验、自定义错误信息、自定义正则校验、自定义校验规则注册、支持i18n国际化处理、支持struct tag规则及提示信息绑定等等特性,是目前功能最强大的Go数据校验模块。
goframe
gvalid
i18n
struct tag
Go
数据校验设计的灵感来源于经典的PHP Laravel框架 https://laravel.com/docs/8.x/validation 感谢Laravel ❤️
PHP Laravel
Laravel
使用方式:
import "github.com/gogf/gf/v2/util/gvalid"
接口文档:
https://pkg.go.dev/github.com/gogf/gf/v2/util/gvalid
gvalid组件具有以下显著特性:
Server
I18n
laravel过来的 太亲切了
2.0版本非常好,请教郭老大一个问题,在v2的apiv1下配置验证规则
type TestReq struct { g.Meta `path:"/config_list" tags:"CMS设置API" method:"get" summary:"cms设置列表接口"` KeyWord string `v:"required#关键字不能为空"`
}
KeyWord为空请求返回验证
{ "code": 51, "message": "关键字不能为空", "data": null}请问这里的message如何修改成msg或其它键值呢?
自己定义一个中间件即可,不用示例的。
希望tag中能增加个field来表示字段的意思,去替换xxx字段更加好,另外最后返回那个字段的消息提示,例如这样: {"filed": "username", "msg": "账号不能为空"}, 这样就更好结合前端表单提示,这样的体验更好些
4 Comments
Charles
laravel过来的 太亲切了
大辉哥
2.0版本非常好,请教郭老大一个问题,在v2的apiv1下配置验证规则
KeyWord为空请求返回验证
{
"code": 51,
"message": "关键字不能为空",
"data": null
}
请问这里的message如何修改成msg或其它键值呢?
郭强
自己定义一个中间件即可,不用示例的。
hanwei
希望tag中能增加个field来表示字段的意思,去替换xxx字段更加好,另外最后返回那个字段的消息提示,例如这样: {"filed": "username", "msg": "账号不能为空"}, 这样就更好结合前端表单提示,这样的体验更好些