Используя Symfony 4, у меня есть форма с полем даты. Safari (MacOS) и I.E. не поддерживает выбор даты HTML5. Когда пользователь отправляет дату (без использования средства выбора даты), я хочу, чтобы в сообщении об ошибке было указано «Пожалуйста, отформатируйте дату yyyy-mm-dd» вместо значения по умолчанию «Это значение недопустимо».
Вот мой класс формы:
class MyType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('date', DateType::class, [
'widget' => 'single_text',
])
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => MyEntity::class,
]);
}
}
Вот мой класс сущности:
class MyEntity
{
/**
* @Assert\NotBlank()
* @Assert\Date()
*/
private $date;
public function getDate()
{
return $this->date;
}
public function setDate($date)
{
$this->date = $date;
}
}
Я пытался:
/**
* @Assert\NotBlank()
* @Assert\Date(
* message="Please format your date yyyy-mm-dd."
* )
*/
private $date;
Я могу настроить сообщения об ошибках для полей формы TextType, но не могу найти никаких примеров для DateType. Любая помощь будет оценена. Спасибо.