私は現在、人のFormTypeに取り組んでいます。カスタムの有効性メッセージが必要なので、oninvalid
とonchange
という属性を使用します。ただし、これらの属性内で使用される変換は機能しません。私は、 "person.label.firstname"というカスタム有効メッセージを取得するだけです。Symfony 3 FormTypeの使用attrの翻訳
ラベルとプレースホルダの翻訳は機能します。なぜそれはonchangeとoninvalidで動作しないのですか? (はい、翻訳されています)
$builder->add("firstname", TextType::class, array(
"label" => "person.label.firstname",
"attr" => array("placeholder" => "person.label.firstname",
"pattern" => "^[a-zA-Z \-]+",
"oninvalid" => 'setCustomValidity("person.validity.firstname")')
))
ありがとうございます。
まずあなたの答えをありがとうございました。しかし、トランスレータはそのFormType内では未定義のメソッドです。たとえば、バリデータyamlの翻訳ファイルを挿入するにはどうすればよいですか? – Mason
サービスをフォームに挿入するには、そのサービスをサービスとして登録する必要があります。ここでは、それを行う方法に関するドキュメントの記事です:https://symfony.com/doc/current/form/create_custom_field_type.html#form-field-service –
申し訳ありませんが、私はそれを動作させるようにしようとします。ありがとう! – Mason