我有一个标准表单(没有对象),我需要检查field1<域2。如果不是,我想在表单中显示错误,就像我在使用对象的表单验证时一样。
我红色http://symfony.com/doc/current/book/validation.html#validating-values-and-arrays但它是断言约束。我的具体是。
我也红了http://symfony.com/doc/current/book/forms.html#adding-validation。但是再次使用约束验证。
也许我需要使用它:http://symfony.com/doc/current/cookbook/validation/custom_constraint.html。
感谢您的建议
答案 0 :(得分:0)
经过一番研究,这是我的解决方案。
在我的控制器中,如果我的条件为真,那么我使用代码设置错误并返回表单。这样,我看到了特定字段的错误。
use Symfony\Component\Form\FormError;
...
$form = $this->createForm(new formType());
$form->get('my-field')->addError(new FormError($this->get('translator')->trans('error.message.greather.than')));
return $this->render('MyBundle:Default:search.html.twig', array('form' => $form->createView()));
我不确定这是最好的方式,但它对我有用。