У меня есть шаблон для редактирования франшизы.Внутри этого шаблона у меня есть две вещи: встроенный контроллер, который показывает мне сводную таблицу со всеми франшизами, уже сохраненными в базе данных, с кнопкой «редактировать» для каждой строки, и форму, заполненную данными франшизы.В настоящее время редактирование.
Проблема заключается в том, что когда я обрабатываю форму и проверка не проходит, сводная таблица, созданная встроенным контроллером, показывает мне франшизу, которую я пытался изменить значениями, которые я ввел в форму, даже еслион не прошел валидацию, и база данных никогда не обновлялась.
В коде есть несколько испанских слов, поэтому просто для пояснения «franquicia» означает «франшиза»
Метод визуализации ипроверка формы:
public function editarAction($superusuario_id, $franquicia_id)
{
$request = $this->getRequest();
$em = $this->getDoctrine()->getEntityManager();
$franquicia = $em->getRepository('FacturaBundle:Franquicia')->findOneById($franquicia_id);
$form = $this->createForm(new FranquiciaType(), $franquicia);
if($request->getMethod() == 'POST')
{
$form->bindRequest($request);
if($form->isValid())
{
$em = $this->getDoctrine()->getEntityManager();
$em->persist($franquicia);
$em->flush();
return $this->redirect($this->generateUrl('s_listar_franquicias', array('superusuario_id'=>$superusuario_id)));
}
}
return $this->render('FacturaBundle:Superusuario:franquicia-editar.html.twig',
array('superusuario_id'=>$superusuario_id,
'franquicia_id'=>$franquicia_id,
'form'=>$form->createView(),
'franquicia'=>$franquicia ));
}
Метод, используемый встроенным контроллером:
public function listarTodasAction($superusuario_id)
{
$em = $this->getDoctrine()->getEntityManager();
$franquicias = $em->getRepository('FacturaBundle:Franquicia')->findAll();
return $this->render('FacturaBundle:Superusuario:franquicia-listar-todas.html.twig', array('superusuario_id'=>$superusuario_id, 'franquicias'=>$franquicias));
}
Я не вставляю код для шаблонов, потому что он слишком длинный, но я сделаюэто если нужно.
Кто-нибудь может мне помочь?