Go语言 如何向嵌套字段添加验证器标记

u4vypkhs  于 2023-05-27  发布在  Go
关注(0)|答案(1)|浏览(263)

这是我的代码

type AbstractAccount struct {
    Email        string `gorm:"unique;type:varchar"`
    PasswordHash string `gorm:"unique;type:varchar"`
}

type Planner struct {
    AbstractAccount
}

例如,我想通过PlannerEmail添加一个自定义验证器标记

type Planner struct {
    AbstractAccount `validator:"Email:customTag"`
}

有没有一种方法可以在go validator中找到它,或者有没有任何库可以做到这一点?

kq0g1dla

kq0g1dla1#

Sample program
在示例程序中,有一个名为getFieldsWithCustomTag函数,它接受一个反射值作为参数,并递归地搜索带有标记c-tag:true的字段(您可以更改此标记)。它将这些字段追加到切片中,如果遇到嵌套结构,则递归调用自身以搜索嵌套结构中的字段。

相关问题