ZBLOG

validator10 如何通过validator.FieldError 获取字段的所有tag

要获取字段的所有tag,你可以使用validator.FieldError结构体中的Tag字段。下面是一个示例代码片段,演示如何通过validator.FieldError获取字段的所有tag:

package main

import (
	"fmt"
	"reflect"

	"github.com/go-playground/validator/v10"
)

type User struct {
	Name  string `validate:"required,min=5"`
	Email string `validate:"required,email"`
}

func main() {
	user := User{Name: "John", Email: "john@example"}
	validate := validator.New()

	err := validate.Struct(user)
	if err != nil {
		for _, err := range err.(validator.ValidationErrors) {
			field, _ := reflect.TypeOf(user).FieldByName(err.StructField())

			fmt.Printf("Field: %s\n", field.Name)
			fmt.Printf("Validation Tag: %s\n", err.Tag())
		}
	}
}

在这个例子中,我们定义了一个名为User的结构体,其中包含两个字段:NameEmail。然后我们使用Go Playground Validator库(版本10)进行结构体验证。如果验证失败,我们迭代处理每个错误,并通过反射获取到对应字段的名称和相关tag。

请确保导入了正确版本的Validator库,并根据你的实际需要进行调整和扩展此示例代码。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=14449

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?