我修改我的代碼以遵循@Stony的建議。無法在Sf2上的電子郵件字段上自定義錯誤消息
我想自定義我的電子郵件輸入錯誤。我試圖按照symfony2 tutorial但它不起作用。
我遵循的symfony驗證教程,並創建我的YML文件,但是當我充滿了壞ADRESS我的電子郵件FIEL,錯誤顯示效果還是symfony的默認錯誤,而不是我的自定義消息...
/**
*
* @Route("/info")
*/
class InfoController extends BaseController
{
public function contactusAction(Request $request)
{
$constraint = new Collection(array('email' => new Email(array('message' => 'Adresse email invalide')),));
$contact = new ContactUs();
$form = $this->createFormBuilder($contact)
->add('nom', 'text')
->add('mail', 'email')
->add('sujet', 'choice', array('choices' => array('pt' => 'Problemes techniques', 'bi' => 'Boite a idees', 'd' => 'Divers')))
->add('msg', 'textarea')
->getForm();
}
}
這是我的看法
<form action="" method="post" {{ form_enctype(form) }} class="contactus">
{{ form_errors(form) }}
<div>
{{ form_label(form.nom, 'Nom : ') }}
{{ form_errors(form.nom) }}
{{ form_widget(form.nom) }}
</div>
<div>
{{ form_label(form.mail, 'Email : ') }}
{{ form_errors(form.mail) }}
{{ form_widget(form.mail) }}
</div>
<div>
{{ form_label(form.sujet, 'Sujet : ') }}
{{ form_errors(form.sujet) }}
{{ form_widget(form.sujet) }}
</div>
<div>
{{ form_label(form.msg, 'Message : ') }}
{{ form_errors(form.msg) }}
{{ form_widget(form.msg) }}
</div>
<input type="submit" value="Envoyer" />
{{ form_rest(form) }}
</form>
這裏是我的YML文件
PROJECT\CoreBundle\Entity\ContactUs:
properties:
mail:
- Email:
message: Adresse email invalide.
http://symfony.com/doc/current/book/forms.html#creating-form-classes#adding-validation您可以找到該行,因此約束選項存在,但它不適用於我的代碼;) –
它與驗證一樣;)約束以另一種方式使用。用一個yml文件或約束類。最簡單的方法是製作驗證類並使用註釋。 – Stony
但我只想更改電子郵件輸入的錯誤消息,並且希望在我的控制器中執行此操作。不在yml文件中。這不可能? –