"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment simplifier la validation de structure dans Go : approche idiomatique vs "go-validator" ?

Comment simplifier la validation de structure dans Go : approche idiomatique vs "go-validator" ?

Publié le 2024-11-09
Parcourir:678

How to Simplify Struct Validation in Go: Idiomatic Approach vs. \

Validation des structures dans Go

Vérifier la validité des valeurs de structure est une tâche cruciale dans le développement de logiciels. Lorsqu'il s'agit de nombreuses petites structures, vérifier individuellement chaque champ peut s'avérer fastidieux. Explorons l'approche idiomatique et une solution alternative pour valider les structures.

Validation idiomatique

L'exemple fourni est une approche courante pour valider les structures. Chaque champ est vérifié individuellement à l'aide des méthodes de la structure. Cependant, cette méthode devient fastidieuse à mesure que le nombre de champs ou de structures augmente.

Solution alternative

La communauté Go a développé divers packages pour simplifier le processus de validation. L'un de ces packages est le populaire "go-validator" (https://github.com/go-validator/validator).

En utilisant ce package, vous pouvez définir des règles de validation pour chaque champ à l'aide de balises dans la structure. définition. Le validateur vérifie ensuite automatiquement les valeurs par rapport aux règles définies.

Exemple

Considérez la structure suivante avec des règles de validation :

import "github.com/go-validator/validator"

type Event struct {
    Id     int    `validator:"min=1"`
    UserId int    `validator:"min=1"`
    Start  string `validator:"datetime"`
    End    string `validator:"datetime"`
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3