FormType: обязательный атрибут не работает с типом сущности - PullRequest
0 голосов
/ 07 октября 2018

Я работаю с Symfony 3.4, и при попытке добавить обязательный атрибут HTML5 в мое поле "fournisseur" я не получил его в HTML.

ArrivageType.php:

$builder
->add('fournisseur', EntityType::class, array(
    'class' => 'AppBundle:Fournisseur',
    'choice_label' => 'name',
    //'empty_data'  => null,
    'required' => true,
))

1 Ответ

0 голосов
/ 07 октября 2018

У вас не установлены multiple и expanded, эти опции по умолчанию false, то есть вы пытаетесь отобразить элемент select.

По умолчанию Symfony не добавляет атрибут required к элементам select, если для параметра required установлено значение true, вместо этого он не отображает пустой option в вашем элементе select.

Если вы хотите, чтобы к вашему элементу select был добавлен пустой атрибут option и required, вам необходимо добавить в форму placeholder:

$builder
    ->add('fournisseur', EntityType::class, array(
        'class' => 'AppBundle:Fournisseur',
        'choice_label' => 'name',
        //'empty_data'  => null,
       'required' => true,  // not needed since it is true by default,
       'placeholder' => 'Choose a fournisseur'
    ))

При этом будет отображаться пустой option с текстом «Выбрать форекс» внутри вашего элемента select вместе с атрибутом required для этого select.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...