Мой простой преобразователь данных преобразует число в сущность и наоборот. Это похоже на пример из официальной документации.
Метод reverseTransform
преобразует число в сущность, а в случае неудачи выдает TransformationFailedException
с описательным сообщением:
public function reverseTransform($number)
{
if (!$number) {
return null;
}
$issue = $this->om
->getRepository('AcmeTaskBundle:Issue')
->findOneBy(array('number' => $number))
;
if (null === $issue) {
throw new TransformationFailedException(sprintf(
'An issue with number "%s" does not exist!',
$number
));
}
return $issue;
}
Однако поле формы, использующее приведенный выше преобразователь, получает общее сообщение об ошибке «Это значение недопустимо». Даже изменение текста исключения (которое, как я ожидаю, будет использоваться в качестве сообщения проверки, но это не так...) не меняет сообщение об ошибке.
Как я могу отобразить текст исключения вместо «Это значение недействительно»?