Post

Symfony – Validation des données

Symfony – Validation des données

Cours 23 — Validation des données

Introduction

Symfony permet de vérifier automatiquement les données saisies par l’utilisateur.

Les règles de validation sont généralement placées dans les entités.


Importer les contraintes

1
use Symfony\Component\Validator\Constraints as Assert;

Champ obligatoire

1
2
#[Assert\NotBlank]
private ?string $nom = null;

Résultat :

1
Le champ nom ne peut pas être vide.

Longueur minimale et maximale

1
2
3
4
5
#[Assert\Length(
    min: 2,
    max: 50
)]
private ?string $nom = null;

Résultat :

1
Le nom doit contenir entre 2 et 50 caractères.

Vérifier une adresse email

1
2
#[Assert\Email]
private ?string $email = null;

Résultat :

1
L'adresse email doit être valide.

Combiner plusieurs contraintes

1
2
3
#[Assert\NotBlank]
#[Assert\Length(min: 2, max: 50)]
private ?string $nom = null;

Déclencher la validation

1
2
3
4
5
6
7
8
$form->handleRequest($request);

if (
    $form->isSubmitted() &&
    $form->isValid()
) {

}

La méthode isValid() vérifie automatiquement les contraintes.


Afficher les erreurs

1
2
3
{{ form_errors(form.nom) }}


Comprendre le processus

1
2
3
4
5
6
7
8
9
Saisie utilisateur
↓
Validation
↓
isValid()
↓
Erreurs éventuelles
↓
Enregistrement

Conclusion

La validation permet de sécuriser les données.

Contraintes à retenir :

1
2
3
NotBlank
Length
Email

Méthode à retenir :

1
isValid()
This post is licensed under CC BY 4.0 by the author.