我想执行我的控制器动作,但之后我渲染视图给用户,这里是我的控制器操作的Symfony2控制器发送答案后执行操作
public function addAction(Request $request)
{
$this->denyAccessUnlessGranted('ROLE_ADMIN', null, 'Vous n\'avez pas les droits pour accéder à cette page');
$preconisation = new Preconisation();
$form = $this->createForm(new PreconisationType($preconisation), $preconisation);
if($request->isMethod('POST')) {
$form->handleRequest($request);
if ($form->isValid()) {
$em = $this->getDoctrine()->getManager();
$rapport = $em->getRepository('DataBaseBundle:rapport')->findByIdRapport($preconisation->getRapport()->getIdRapport());
$rapport[0]->incPreco($preconisation->getRapport()->getIdRapport());
$em->persist($preconisation);
$em->persist($rapport[0]);
$em->flush();
return $this->redirect($this->generateUrl('data_base_preconisation_index'));
}
}
return $this->render('DataBaseBundle:Preconisation:add.thml.twig', array('form' => $form->createView(),'menu' => 1,
'leftMenu' => 1,));
}
所以
我想用户后才能执行此已经收到了他的答案,以避免充电时间长
$rapport = $em->getRepository('DataBaseBundle:rapport')->findByIdRapport($preconisation->getRapport()->getIdRapport());
$rapport[0]->incPreco($preconisation->getRapport()->getIdRapport());
$em->persist($rapport[0]);
我看到了,我可以使用监听器和调度员,但我真的不unders他的结构或它的工作原理。但我也看到了httpKernel与终止事件。不幸的是我没有答案。我不知道哪一个是最好的...
有什么建议吗?
那你知道在哪里可以找到使用监听器的symfony的2.8应用程序的一个例子遥远的PHP脚本?因为在食谱上,理解它的结构并不容易。 – T3ddy