0
我想使用ajax更新单个实体字段。基本上我没有形式,只需点击链接传递id和值来触发ajax。但我有实体形式的多个文件字段。因此,当我更新实体PrePersist和PostPersist函数触发文件上传。我不想在此更新中执行此操作。symfony2不验证文件上传更新
我的控制器动作
public function ajaxupdateAction(Request $request){
$data = $request->query->get('data');
$id = $data['id'];
$em = $this->getDoctrine()->getManager();
$entry = $em->getRepository('RootContestBundle:Entry')->find($id);
if (!$entry) {
throw $this->createNotFoundException('Unable to find Entry entity.');
}
$form = $this->createFormBuilder(array('id' => $id,'is_liked'=>true))
->add('id', 'hidden')
->add('is_liked','hidden')
->getForm();
$entry->setIsLiked(true);
$form->bind($this->getRequest());
$em->persist($entry);
$em->flush();
return new JsonResponse(array('reverse'=>'dislike'));
}
什么我做错了,我怎么能解决这个问题!
给我你的postPersist订户。当我做文件上传时,我将事件订阅者添加到一个Form(前'postBind'),但不添加到实体 –
@MaxMałecki:我完全按照[symfony2 cook book](http://symfony.com/doc/2.0 /cookbook/doctrine/file_uploads.html)。那么如何添加事件订阅者来形成即时的实体 – Gowri