[英]Symfony : form error message not displayed
我正在使用 Symfony 创建一个表单,它工作得很好,但是我的验证有问题,我填写了一个必填字段而不是空白,但是当我提交输入为空的表单时不显示错误消息我没有知道为什么
有一部分代码:
表格类型:
use Symfony\Component\Validator\Constraints\NotBlank;
class AnnonceurType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
<some fields>
->add('phone', TextType::class, [
'required' => true,
'constraints' =>[
new NotBlank()
]
])
}
}
表格模板:
{{ form_start(form) }}
<some fields>
<div class="form-group">
{{ form_label(form.phone, 'Phone number') }} *
{{ form_widget(form.phone, { 'attr': {'class': 'form-control'}}) }}
</div>
<div class="float-right">
<button type="submit" class="btn btn-primary">
{{ 'submit'|trans() }}
</button>
</div>
<div class="form-error">
{{ form_errors(form) }}
</div>
{{ form_end(form) }}
有人知道我的代码有什么问题吗? 感谢您
更新:已解决,这是因为需要,我添加了一个 novalidate ,现在可以了
function form_errors
将 output 的错误与特定字段关联。 在这种情况下,由于根表单没有任何错误,因此它什么也不显示。
您可以:
form_errors(form.phone)
。error_bubbling
,因此错误会冒泡到父级并按预期工作。 此外,由于您似乎正在使用引导程序,您可以配置form_theme
以使用引导程序布局; 它会自动 output 字段错误作为form_label
调用的一部分,尽管您将失去精细控制其渲染的能力。
if($form->issubmitted()){
$form['phone']->addError(new FormError('display message here'))
if($form->isValid()){
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.