我一直在按照本教程使用 Symfony 2.5 创建一个注册表单。
我所做的唯一区别是我的班级中的用户名的附加字段User
并将其呈现在UserType
表单中。
将表单提交到account_create
-route(最终使用create
Account 控制器中的操作)时,它不会正确处理表单。该页面显示为空白,甚至不再显示分析器。
此外,该脚本似乎破坏了我的 Apache(我通过XAMPP在 Windows 上本地运行它),因为我在提交表单后尝试执行的所有操作都会导致无休止的加载。这意味着无论我接下来尝试访问服务器上的哪个页面(即使它只是分析器),我都不能。它只是永远加载(我已经等了 10 多分钟一次)。那时只有 Apache 重启有帮助。
这是我在 Account 控制器中的 createAction
// 'account_create' route
// TestBundle:Account:create
public function createAction(Request $request)
{
$em = $this->getDoctrine()->getManager();
echo "Doctrine managed. ";
$form = $this->createForm(new RegistrationType(), new Registration());
echo "Form created. ";
$form->handleRequest($request);
echo "Request handled. ";
if ($form->isValid()) {
$registration = $form->getData();
echo "Form data received. ";
$em->persist($registration->getUser());
echo "User persisted. ";
$em->flush();
echo "Toilet flushed. ";
return $this->redirect($this->generateUrl('admin_page'));
}
return $this->render(
'TestBundle:Account:register.html.twig',
array('form' => $form->createView())
);
}
它只输出Doctrine managed. Form created.
,所以显然在调用该handleRequest($request)
方法时它会崩溃。
怎么回事,大错特错?
如果您需要任何其他脚本的代码,请告诉我!