对于我的联系表格,不会显示任何表格错误。
$contact = new Contact();
$form = $this->createForm(new ContactFormType(), $contact);
/* handle contact form submission */
if ('POST' == $request->getMethod()) {
$form->bindRequest($request);
if ($form->isValid()) {
//Do something
}
}
return $this->render('MainBundle:Default:contact.html.twig', array(
'form' => $form->createView()
));
我的验证员
Fc\MainBundle\Entity\Contact:
properties:
firstName:
- NotBlank: ~
lastName:
- NotBlank: ~
email:
- NotBlank: ~
- Email:
checkMX: true
title:
- NotBlank: ~
message:
- NotBlank: ~
我在表单标记中添加了一个novalidate属性,以检查我的验证是否有效。现在,当我提交带有空数据的表单时,没有任何事情发生(正确的数据一切正常),控制器将表单识别为无效并停止进一步的处理。
在我打电话的模板中
{{ form_errors(form) }}
但没有显示任何内容。有什么想法吗?我使用symfony 2.1.X
答案 0 :(得分:5)
您能否确认验证是否正常:
if ($form->isValid()) {
//Do something
}
else
{ die('not valid') }
表格是否已张贴好?
HTML中是否有任何内容显示您调用{{form_errors(form)}}的位置? - 如果是这样的话,那将是一个CSS或JS问题......
您是否尝试按字段显示错误(显然验证中没有全局错误):
{{ form_errors(form.firstName) }}
etc.
备注: form.firstName 有效,而不是 form.first_name 。你必须遵循Doctrine2 / Symfony2的约定。