Symfony 2.1には単純なフォームがあり、それを送信すると、いくつかのフィールドを必須として指定したため、フォームページにいくつかのエラーメッセージが表示されると思います。
ただし、{{ form_errors(form.company_name) }}
その特定のフィールドのエラーメッセージを表示するアプローチは私には機能しません。メッセージは表示されません。ただし、を使用する{{form_errors(form)}}
と、すべてのエラーメッセージが1か所に表示されます。私は{{form_errors(form.company_name)}}
それを機能させるための個別の方法が必要です。誰かがこれを経験しましたか?何が間違っている可能性がありますか?これが私の小枝コードです:
<form method="post" {{ form_enctype(form) }} novalidate>
<table>
<tr>
<td class="field-cell">{{ form_label(form.promo_referral) }}: </td>
<td>{{ form_errors(form.promo_referral) }}{{ form_widget(form.promo_referral) }}</td>
</tr>
<tr>
<td class="field-cell">{{ form_label(form.company_name) }}: </td>
<td>{{ form_errors(form.company_name) }}{{ form_widget(form.company_name) }}</td>
</tr>
...
これが私の関連するコントローラーコードです:
$registration = new ServiceVendorRegistration();
$form = $this->createForm(new ServiceRegisterForm(), $registration);
if ($request->isMethod("POST"))
{
$form->bind($request);
if ($form->isValid())
{
// do something else
}
}
return $this->render('MyBundle:Default:register_service_vendor.html.twig', array('form' => $form->createView()));
Validation.ymlは、次のようにフィールドを必須にします。
properties:
companyName:
- NotBlank:
message: You have to fill this
どんな助けでも大歓迎です。