В вашем примере вы создаете новую сущность для начала:
$curriculo = new Curriculittle();
Так как это не существующая сущность (например, та, которую вы получили с помощью запроса к базе данных)), вызов $em->persist($curriculo)
с последующим $em->flush()
сохранит эту сущность как новый элемент. обновить нечем, так как объект является новым.
Тот же код для сохранения и сброса может использоваться для обновления существующего объекта;вам просто нужно сначала получить / получить существующую сущность, а не создавать новую.В настоящее время похоже, что вы делаете это в конце метода:
$trabajador=$em->getRepository('SofLaSoflaBundle:Curriculittle')->find($id);
, однако вы должны сделать это до привязки вашей формы, например:
public function actualizarCurriculoAction($id) {
$em = $this->getDoctrine()->getEntityManager();
$curriculo = $em->getRepository('SofLaSoflaBundle:Curriculittle')->find($id);
if (!$curriculo) {
$curriculo = new Curriculittle();
}
$form = $this->createForm(new CurriculittleType(), $curriculo);
$request = $this->getRequest();
if ($request->getMethod() == 'POST') {
$form->bindRequest($request);
$lselect=$this->get('request')->request->get('lselect');
$edad=$this->get('request')->request->get('edad');
$estado=$this->get('request')->request->get('estadoselect');
if ($form->isValid()) {
$curriculo->setUsalentes($lselect);
$curriculo->setEdad($edad);
$curriculo->setEstado($estado);
$em->persist($curriculo);
$em->flush();
/*Llamando a la plantilla de listados*/
$curriculos = $em->getRepository('SofLaSoflaBundle:Curriculittle')->findAll();
/*Enviando los datos a la plantilla y Renderizandola*/
return $this->render('SofLaSoflaBundle:Default:listado.html.twig', array('curriculos' => $curriculos));
}
}
return $this->render('SofLaSoflaBundle:Default:curriculo.html.twig', array('form' => $form->createView(), 'curriculo' => $curriculo));
}
Этот пример (отрегулировать в соответствии с требованиями) начнет поиск сущности, а затем свяжет отправку формы с этой сущностью.Если сущность существует, она будет обновлена.Если нет, он будет сохранен как новый объект.