我有一个图像数组,我想能够添加/更新/删除在symfony4的形式。
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder
->add('image', FileType::class, array(
'data_class' => null
))
;
}
然后,我使用一个CollectionType填充上述表单的实例来为数组中的每个图像呈现一个表单,使用'allow\u add'和'allow\u delete'这样我就可以通过JavaScript添加/删除行。
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder->add('imagesets', CollectionType::class, array(
'entry_type' => ImageType::class,
'entry_options' => array('label' => false),
'allow_add' => true,
'allow_delete' => true
));
}
这对于添加新图像很好,但是当更新现有图像时,FileType元素不应该是必需的,它应该只对新行是必需的。
问题:
(注意,我将把普通数组传递给这些表单对象,而不是实体。)