symfony 3.4.14 collectionType编辑和删除问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了symfony 3.4.14 collectionType编辑和删除问题相关的知识,希望对你有一定的参考价值。

我在数据库中有两个表,用户和文件,每个用户可以有multilpe图像,所以我使用Collectiontype添加多个图像创建和读取工作正常,但当我尝试编辑它们时,我得到此错误screenshot

我看了每一个文档,但我找不到任何解决我的问题,这是我在usertype和Filestype https://gist.github.com/Bakhshi-Faisal/ffa62cc6b059f662243cf7e2564a03ef

答案

您需要相应地更改表单类型:

class UserType extends AbstractType {

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        ->add('name')
        ->add('lastName')
        ->add('files',CollectionType::class, array(
              'entry_type' => AppBundleFormFilesType::class,
              'allow_add' => true,
              'allow_delete' => true,
        ));
...

class FilesType extends AbstractType {

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder->add('file',FileType::class, array(
              'data_class' => null
        ));
...
另一答案

您必须使用“数据转换”。看看this

以上是关于symfony 3.4.14 collectionType编辑和删除问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在`collection`字段Symfony 2.1中将选项传递给CustomType?

Symfony 3 / sonata_type_collection 更改查询每个添加行

Symfony 4:调用 getter 后,Doctrine2 LAZY Fetch Collection 仍然为空

Symfony-Catchable致命错误:传递给Doctrine Common Collections ArrayCollection :: __ construct()的参数1必须是类(代码

Symfony2:集合中的单选按钮

Symfony5 handleRequest 更新原始 collectionType 对象