symfony2でフォーム検証メッセージをオーバーライドする方法。 validation.xmlファイルに関連するモデルクラスがあります。私はそれがhtml5に基づいてフォームを検証すると思う。symfony2でのフォーム検証メッセージのオーバーライド
「要求されたフォーマットに一致してください。」、「このフィールドに記入してください。」この検証メッセージを無効にする方法はありますか?私はあなたがブラウザによって作成されたHTML5の検証メッセージです参照
symfony2でフォーム検証メッセージをオーバーライドする方法。 validation.xmlファイルに関連するモデルクラスがあります。私はそれがhtml5に基づいてフォームを検証すると思う。symfony2でのフォーム検証メッセージのオーバーライド
「要求されたフォーマットに一致してください。」、「このフィールドに記入してください。」この検証メッセージを無効にする方法はありますか?私はあなたがブラウザによって作成されたHTML5の検証メッセージです参照
それらのメッセージをsymfonyのために全く新しいですと
は、この点で私を助けてください、私は、一日以上のため立ち往生しています。それらを上書きする場合は、そのフィールドに関連付けられた入力タグにoninvalid属性を追加する必要があります。 、お使いのコントローラやフォームタイプで
フォームフィールドにこの属性を追加します:次の2つの方法でこれを行うことができます
$builder->add('email', 'email',array(
'attr'=>array('oninvalid'=>"setCustomValidity('Would you please enter a valid email?')")
));
それとも、あなたの小枝のテンプレートで、フォームフィールドをレンダリングする場合、この属性を追加します。
{{ form_row(form.email, { 'attr': {'oninvalid': "setCustomValidity('Please give me a nice email')"} }) }}
アサートを宣言するときは、各バリデータのメッセージにメッセージオプションのおかげで変更することができます。
/**
* @ORM\Column(type="string", length=255, unique=true)
* @Assert\NotBlank(
* message="You have to choose a username (this is my custom validation message).",
* groups={"registration", "account", "oauth"}
*)
を
MyBundle/Resources/translations/validators.fr.xliffファイルを作成して翻訳を適用することもできます
いいえ、彼が言及しているメッセージは、ブラウザによって作成されたHTML5の検証メッセージです –
くそーそれを見たことはありません^^ ' – Sybio
ありがとう、これは私が探しているものです。時機を得たもの:) – satdev86
あなたがこのようにすれば、あなたは無効な電子メールアドレスを入力してからエラーが発生し、あなたの電子メールアドレスは正しくなりますが、エラーはまだ出ています。どうして? – craphunter
カルロスの答えはほぼ正しいですが、いくつか問題があります。回避策については、「http://stackoverflow.com/questions/10361460/how-can-i-change-html-5-form-validation-errors-default-messages」を参照してください。 – IsraelWebDev