Example #1
0
 public function ajouterAction()
 {
     // on recupere l'entiteManager
     $em = $this->getDoctrine()->getManager();
     //on cree un objet Article
     $article = new Article();
     $article->setDate(new \Datetime());
     $form = $this->createForm(new ArticleType(), $article);
     //on recupere la requete
     $request = $this->get('request');
     // on verifie qu'elle est de  type post
     if ($request->getMethod() == 'POST') {
         // on fait le lien requete <-> formulaire
         // apartir de la la variable $article comporte les valeur saisi dans le formulaire
         $form->bind($request);
         //on verifie que les valeur rentres sont corrects
         if ($form->isValid()) {
             # on enregistre notre notre objet $article dans la BDD, oubien envoyer par email, ou autre chose
             $em = $this->getDoctrine()->getManager();
             $em->persist($article);
             $em->persist($article->getImage());
             $em->flush();
             //on redirige vers la page de visualisation de l4article nouvelle;ent cree
             return $this->redirect($this->generateUrl('sdzblog_accueil'));
         }
     }
     // a ce stade, soit : - la requete est de type GET , donc le visiteur vient d'arriver sur
     //la page et veut voir le formulaire. -soit la requete est de type POST, ,ais le form non valide
     // donc on l'affiche de nouveau
     return $this->render('SdzBlogBundle:Blog:ajouter.html.twig', array('form' => $form->createView()));
 }