Maison > développement back-end > Golang > la validation ozzo dans les règles renvoie une erreur pour des valeurs égales

la validation ozzo dans les règles renvoie une erreur pour des valeurs égales

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2024-02-05 22:48:03
avant
911 Les gens l'ont consulté

规则中的 ozzo 验证对于相等值返回错误

Contenu de la question

J'ai un code simple qui utilise echo 作为引擎,使用 ozzo-validation comme validateur de demande.

func (a MyRequest) Validate() error {
    return validation.ValidateStruct(
        &a,
        validation.Field(&a.Value,
            validation.Required,
            validation.Length(1, 5),
            validation.Each(validation.NilOrNotEmpty, validation.In([]string{"true", "false"}),
            ),
        ),
    )
}
Copier après la connexion

Voici la demande que j'ai envoyée :

{"value":["true"]}
Copier après la connexion

J'obtiens cette erreur de la In règle :

value: (0: must be a valid value.).
Copier après la connexion

Mais quand je vérifie la valeur en utilisant ==reflect.DeppEqual les valeurs sont égales :

fmt.Println(reflect.DeepEqual([]string{"true", "false"}[0], a.Value[0]))
fmt.Println([]string{"true", "false"}[0] == a.Value[0])


output:
true
true
Copier après la connexion

Qu'est-ce que je fais de mal ici ?


Bonne réponse


utilisez validation.Each(validation.In([]string{"true", "false"})) 会将 Value 切片中的每个元素与提供给 validate.In 的切片进行比较,即 []string{ “真”,“假”}.

Utilisez les valeurs individuelles dans validation.In("true", "false")Value 切片中的每个元素与 validate.In à des fins de comparaison.

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!

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