在Go Validator.v2中处理嵌套结构

wi3ka0sx  于 2022-12-07  发布在  Go
关注(0)|答案(1)|浏览(274)

我一直在使用Go Validator.v2进行字段验证,它对我的非结构体类型的字段非常有效。然而,当涉及到处理基于结构体的字段(在原始结构体中)时,却没有任何文档介绍。https://pkg.go.dev/mod/gopkg.in/validator.v2
我知道v10支持它,但我更喜欢v2中内置的regex支持。是否有任何方法可以为这些基于结构的字段自定义验证?

type user struct {
   Name            string   `validate:"nonzero"`
   Age             int      `validate:"min=21"`
   BillingAddress  *Address  ???

}

我希望如上所示验证BillingAddress字段,或者我只是在Address模型中编写验证标记,它也会自动对其进行验证?
谢谢,任何指针都不胜感激!

1bqhqjot

1bqhqjot1#

验证程序包将递归搜索一个结构体。只需确保嵌套结构体的字段不是匿名的,并且有一个validate标记。
如果你发现自己在一个包的功能上迷失了方向,看看他们的测试文件,它可能会揭示一些东西。例如,验证程序包测试在这里有一个嵌套结构的例子。
示例:
第一个

相关问题