1.安裝
go get gopkg.in/go-playground/validator.v9
2. 使用
package main import ( "fmt" "github.com/go-playground/locales/zh" ut "github.com/go-playground/universal-translator" "gopkg.in/go-playground/validator.v9" zh_translations "gopkg.in/go-playground/validator.v9/translations/zh" ) type User struct { Account string `json:"account" validate:"required"` PassWord string `json:"pass_word" validate:"required"` } func main() { //獲取數據 account := "" pass_word := "" user := &User{} user.Account = account user.PassWord = pass_word //驗證 zh_ch := zh.New() validate := validator.New() uni := ut.New(zh_ch) trans, _ := uni.GetTranslator("zh") //驗證器注冊翻譯器 zh_translations.RegisterDefaultTranslations(validate, trans) err := validate.Struct(user) if err != nil { for _, err := range err.(validator.ValidationErrors) { fmt.Println(err.Translate(trans)) } return } }
最后輸出:
Accout為必填字段 PassWord為必填字段