我想知道是否可以在不使用form_bubbling的情况下访问我的所有表单错误,因为它会向父级错误提供错误并且单个对象会丢失错误...我需要表单全局知道是否存在错误显示全局“请修复您的错误”消息和各个元素,以了解它们是否包含错误,因为我将向无效的表单输入添加错误CSS类。
提前致谢!
答案 0 :(得分:1)
我发现获取表单错误数量的最有效方法,无论form_bubbling
是true
还是false
,都要在控制器中添加一些指示它的变量:
return $this->render('Acme:Contrats:index.html.twig', array(
'myform' => $form->createView(),
'myformHasErrors' => !$form->isValid(),
));
如果有人找到另一个,请评论/回答。
答案 1 :(得分:0)
在与Symfony的IRC频道中的人交谈后,在Twig模板中有两种方法可以做到这一点:
form.has('errors')
表示布局是否包含错误。 form.vars.errors|length
表示表单中包含的错误数。 问题解决了。所有这些都可以在不使用error_bubbling的情况下使用。