Проверить список выбора в Symfony2

У меня есть список выбора, в котором пользователь может выбрать одно значение, но там я даже устанавливаю пустое значение, если пользователь ничего не выбирает.

Форма не имеет модели, чтобы использовать с ней аннотацию @Assert, а поле выбора является необязательным, поэтому в некоторых случаях оно будет скрыто и его нужно будет проверять только в том случае, если оно показано пользователю.

Как я могу проверить это поле? Когда я установил для него значение required в моем типе формы, это не помогло (если я прав, по умолчанию требуется равно true). Где моя проблема?


person nowiko    schedule 14.01.2015    source источник


Ответы (1)


Вам нужно добавить валидатор NotBlank в ваше поле.

Вы можете добавить валидатор прямо в свое поле, например:

$this->createFormBuilder()
    ->add('exampleField', 'choice', array(
            'label' => 'Label',
            'constraints' => array(
                new NotBlank(),
            ),
        ))
[...]
person Jean    schedule 14.01.2015
comment
хм, это поисковая форма, и она без модели. Я думаю, что мне нужно добавить больше деталей к моему сообщению. - person nowiko; 14.01.2015
comment
Модель не требуется, вы можете добавить валидатор прямо в поле формы. - person Jean; 14.01.2015
comment
Это не дает ответа на вопрос. Чтобы подвергнуть критике или запросить разъяснения у автора, оставьте комментарий под его публикацией. - person RiggsFolly; 14.01.2015
comment
Ты ошибаешься, @RiggsFolly, это правильный ответ. Я расширю пример кода. - person Jean; 14.01.2015