Я использую VichUploaderBundle для управления файлами на моем сайте.
Я хотел бы в форме убедиться, что требуется несколько атрибутов.
Это атрибуты типа File и атрибут типа Entity:
->add('paquetFile', VichFileType::class, array(
'required' => 'required',
'label'=> "Package",
'allow_delete' => false,
))
->add('typeUser',EntityType::class, array(
'required' => 'required',
'class'=>'Site\PagesBundle\Entity\TypeUser',
'choice_label'=>'typeUtilisateur',
'expanded'=>true,
'multiple'=>true,
));
Но в форме это не работает. Я могу подтвердить, не заполняя эти два поля. И конечно, поскольку они не могут быть нулевыми, у меня есть ошибка.
Тогда как для нормального атрибута типа Text ограничение работает.
Как заставить пользователя выбрать файл с атрибутом File и заставить его установить хотя бы один флажок в EntityType?
/**
* @var string
*
* @ORM\Column(name="urlPaquet", type="string", length=255)
*/
private $urlPaquet;
/**
* @Vich\UploadableField(mapping="paquet", fileNameProperty="urlPaquet")
* @var File
* @Assert\NotBlank()
*/
private $paquetFile;
/**
* @var \Doctrine\Common\Collections\Collection
* @ORM\ManyToMany(targetEntity="TypeUser", inversedBy="packages")
* @ORM\JoinTable(name="Packages_des_TypesUser")
* @ORM\JoinColumn(nullable=false)
*/
private $typeUser;
РЕДАКТИРОВАТЬ: Для файла я добавил «@Assert \ NotBlank ()» на мою сущность, и все в порядке. Но для "typeUser" не работает
Спасибо!