我目前正在爲一個人的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