public function creerPanierAction(Request $request) { $em = $this->getDoctrine()->getManager(); $form = $this->get('form.factory')->createNamedBuilder('formulaire_creation_panier')->add('libelle', TextType::class)->add('saison', EntityType::class, array('class' => 'AMAPBundle:Saison', 'choice_label' => 'libelle'))->add('type_panier', EntityType::class, array('class' => 'AMAPBundle:TypePanier', 'choice_label' => 'libelle'))->add('prix', IntegerType::class)->add('ajouter', SubmitType::class, array('label' => 'Créer le panier'))->getForm(); $form2 = $this->createFormBuilder()->add('libelle', TextType::class)->add('ajouter', SubmitType::class, array('label' => 'Créer Type Panier'))->getForm(); if ($form->handleRequest($request)->isSubmitted() || $form2->handleRequest($request)->isSubmitted()) { if ($form->get('ajouter')->isClicked()) { $session = $request->getSession(); $data = $form->getData(); $panier = new Panier(); $panier->setLibelle($data['libelle']); $panier->setSaison($data['saison']); $panier->setTypePanier($data['type_panier']); $panier->setPrix($data['prix']); $amap = $em->getRepository('AMAPBundle:Amap')->findOneBy(array('id' => $session->get('amap'))); $panier->setAmap($amap); $em->persist($panier); $em->flush(); //return $this->redirect($this->generateUrl('amap_panier_ajouter')); } if ($form2->get('ajouter')->isClicked()) { $data = $form2->getData(); $typePanier = new TypePanier(); $typePanier->setLibelle($data['libelle']); $em->persist($typePanier); $em->flush(); //return $this->redirect($this->generateUrl('amap_panier_ajouter')); } } return $this->render('AMAPBundle:Admin/Panier:creer.html.twig', array('page_courante' => 'AdminPanier', 'onglet_courant' => 'creerPanierAction', 'form' => $form->createView(), 'form2' => $form2->createView())); }