Traitement des données du formulaire
Le formulaire étant au point, il
s’agit maintenant de nous préoccuper de la récupération
des informations saisies par l’utilisateur et de l’insertion
en base de données.
En Symfony, tout se passe dans la même
action, la création et le traitement du formulaire. Nous
allons commencer par traiter l’action insert() de AdminController.
Pour récupérer les données
dans l’entité associée, il faut utiliser
la méthode handleRequest() en
lui passant l’objet $request :
$formProduit->handleRequest($request);
Puis il faut tester l’existence de
la méthode Post dans l’objet $request. Il est conseillé de
tester également la méthode isValid().
Cette méthode contrôle que toutes les données
du formulaire vérifient les contraintes de validation. Nous
reviendrons dans une prochaine rubrique sur la validation du formulaire.
if($request->isMethod(’post’) && $formFilm->isValid() ){...}
À l’intérieur de
l’instruction de contrôle if,
il faut récupérer l’Entity Manager pour
pouvoir insérer les données dans l’entité.
$em=$this->getDoctrine()->getManager();
Les données du formulaire sont déjà dans
l’entité. Elles ont été transmises
au formulaire ...