Pendant le processus de développement, nous devons souvent vérifier les données saisies par l'utilisateur. Lors du développement en langage Go, go-playground/validator/v10 est une bibliothèque de vérification très simple à utiliser. Il fournit des règles de vérification riches et des méthodes d'utilisation concises, qui peuvent nous aider à vérifier rapidement et efficacement la légalité des données. Dans cet article, l'éditeur PHP Xinyi expliquera comment utiliser go-playground/validator/v10 pour vérifier deux champs et donnera des exemples de code détaillés. Apprenons ensemble !
Besoin de vérifier qu'au moins un champ doit exister par e-mail, au moins un numéro de téléphone est requis
Actuellement, j'ai un validateur personnalisé
func validateEmailPhone(fl validator.FieldLevel) bool { user := fl.Top().Interface().(models.User) validate := validator.Validate{} if user.Email == "" && user.Phone == "" { return false } if user.Email != "" { if err := validate.Var(user.Email, "email"); err != nil { return false } } if user.Phone != "" { if err := validate.Var(user.Phone, "e164"); err != nil { return false } } return true }
Mais très panique
L'utilisateur est un modèle gorm
Comment vérifier ces deux champs dans ce cas
Il contient beaucoup de balises conditionsrequired
validator
.
Dans votre cas, vous aurez peut-être besoin de required_without_all
+ omitempty
.
required_without_all
- Rendre un champ obligatoire si tous les champs de la liste sont vides.
omitempty
- Seul le champ peut être vide.
N'oubliez pas que les balises requises doivent précéder l'omimpty.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!