Maison > développement back-end > Golang > Comment ajouter une balise de validation au champ imbriqué

Comment ajouter une balise de validation au champ imbriqué

WBOY
Libérer: 2024-02-09 10:10:17
avant
1165 Les gens l'ont consulté

Comment ajouter une balise de validation au champ imbriqué

L'éditeur php Yuzai vous présentera comment ajouter des balises de validation aux champs imbriqués dans cet article. Au cours du processus de développement, nous devons souvent vérifier les données du formulaire pour garantir l'intégrité et l'exactitude des données. Les balises de validation sont ajoutées légèrement différemment lorsqu'il s'agit de champs imbriqués. Cet article détaillera comment utiliser les balises de validation pour valider les champs imbriqués afin d'aider les développeurs à mieux gérer les données de formulaire. Que vous soyez débutant ou développeur expérimenté, cet article vous fournira des conseils et des conseils pratiques. Apprenons ensemble !

Contenu de la question

Ceci est mon code

type abstractaccount struct {
    email        string `gorm:"unique;type:varchar"`
    passwordhash string `gorm:"unique;type:varchar"`
}

type planner struct {
    abstractaccount
}
Copier après la connexion

Par exemple, je veux réussir planner 将自定义验证器标记添加到 email

type Planner struct {
    AbstractAccount `validator:"Email:customTag"`
}
Copier après la connexion

Existe-t-il un moyen d'implémenter cela dans le validateur Go ou existe-t-il une bibliothèque qui peut le faire ?

Solution

Exemple de programme
Dans l'exemple de programme, il existe une fonction appelée getFieldsWithCustomTag qui prend une valeur réfléchie comme paramètre et recherche de manière récursive les champs avec la balise c-tag:true (vous pouvez modifier cela). Il ajoute ces champs à la tranche et, s'il rencontre une structure imbriquée, s'appelle récursivement pour rechercher les champs dans la structure imbriquée.

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!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal