Может кто-нибудь показать мне конкретный пример обновления сущности формы Symfony2? Книга только показывает, как создать новую сущность. Мне нужен пример того, как обновить существующую сущность, где я изначально передаю идентификатор сущности в строке запроса.
У меня проблемы с пониманием того, как снова получить доступ к форме в коде, который проверяет сообщение, не создавая заново форму.
И если я воссоздаю форму, это означает, что мне придется снова запросить объект, что, кажется, не имеет особого смысла.
Вот то, что у меня сейчас есть, но оно не работает, потому что перезаписывает сущность, когда форма публикуется.
public function updateAction($id)
{
$em = $this->getDoctrine()->getEntityManager();
$testimonial = $em->getRepository('MyBundle:Testimonial')->find($id);
$form = $this->createForm(new TestimonialType(), $testimonial);
$request = $this->get('request');
if ($request->getMethod() == 'POST') {
$form->bindRequest($request);
echo $testimonial->getName();
if ($form->isValid()) {
// perform some action, such as save the object to the database
//$testimonial = $form->getData();
echo 'testimonial: ';
echo var_dump($testimonial);
$em->persist($testimonial);
$em->flush();
return $this->redirect($this->generateUrl('MyBundle_list_testimonials'));
}
}
return $this->render('MyBundle:Testimonial:update.html.twig', array(
'form' => $form->createView()
));
}