public function vueAction(Saison $saison) { $em = $this->getDoctrine()->getManager(); $session = $this->getRequest()->getSession(); $request = $this->getRequest(); $hotel = $saison->getHotel(); foreach ($hotel->getVues() as $vue) { $verif = $em->getRepository("BackHotelTunisieBundle:SaisonVue")->findBy(array('saison' => $saison, 'vue' => $vue)); if (count($verif) == 0) { $saisonVue = new SaisonVue(); $saisonVue->setVue($vue); $saison->addVue($saisonVue); } } $form = $this->createForm(new SaisonVType(), $saison); $form->add('vues', 'collection', array('type' => new SaisonVueType($saison->getHotel()->getId()))); if ($request->isMethod("POST")) { $form->bind($request); if ($form->isValid()) { $saison = $form->getData(); foreach ($saison->getVues() as $Vue) { $em->persist($Vue->setSaison($saison)); } $em->flush(); $session->getFlashBag()->add('success', " Votre saison de base a été modifié avec succées "); return $this->redirect($this->generateUrl("VuesSaison", array('id' => $saison->getId()))); } } return $this->render('BackHotelTunisieBundle:Saisons:vue.html.twig', array('hotel' => $hotel, 'saison' => $saison, 'form' => $form->createView())); }