我有这个代码,它必须使用表单中的数据更新DB中的对象,但它说我必须使用setId()而不是直接changind属性“ID”。但是我需要从之前的表单中隐藏字段中获取“ID”。我怎样才能做到这一点?
$rPhone = new RejectedPhone();
$em = $this->getDoctrine()->getEntityManager();
$repository = $em->getRepository("TelnetSmsBundle:RejectedPhone");
$addRPhoneForm = $this->createFormBuilder($rPhone)
->add('id', 'hidden')
->add('phone', 'text', array("label" => "Номер телефона (обязательно через 7-ку!):"))
->add('description', 'textarea', array("label" => "Описание:"))
->getForm();
$addRPhoneForm->bindRequest($request);
var_dump($rPhone); exit();
$em->flush();
答案 0 :(得分:1)
我认为你需要这个:
$addRPhoneForm ->setData($rPhone);
我想你忘记了坚持的方法:
$em->persist($rPhone);