#symfony #symfony-forms #symfony-validator
#symfony #symfony-forms #symfony-валидатор
Вопрос:
У меня есть поле формы, подобное этому:
$form->add('tags', EntityType:class, array(
'class' => Tags::class,
'multiple' => true,
'expanded' => true,
'required' => true,
));
Это создает хороший список флажков, и мне нужно убедиться, что после отправки формы выбран хотя бы один вариант, но даже если этот required
вариант true
не работает, я пробовал с NotBlank()
NotNull()
ограничениями и, также не работает (т. Е. Форма действительна).
Как избежать пустых значений из списка флажков, используя EntityType
тип формы?
Ответ №1:
Вы можете использовать ограничение Count .
В вашем классе сущностей:
/**
* @AssertCount(
* min = "1",
* minMessage = "You must specify at least one tag"
* )
*/
protected $tags
Обратите внимание, что вы можете указать max
параметр и соответствующее сообщение.
Кроме того, required
опция добавления только required
в ваше поле на стороне клиента, она ничего не делает на стороне сервера.