[英]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.