更新在Symfony2(文档)中具有文件字段的实体

rt

我有一个通过带有文件字段的表单创建的实体。现在,当我想通过相同的表单更新此实体时,我需要重新上传文件。将字段空白时,如何预填充文件字段或不修改这些属性?

编辑:FormType:

class ThemeType extends AbstractType {

    private $edit;
    private $parentFunctionalId;

    public function __construct($parentFunctionalId = null, $edit = false) {
        $this->edit = $edit;
        $this->parentFunctionalId = $parentFunctionalId;
    }

    public function buildForm(FormBuilderInterface $builder, array $options) {

        $builder->add('translations', 'collection', array('type' => new ThemeHasTranslationsType(),'allow_add' => true))
            ->add('image1', 'file', array(
                'data_class' => null, 'required' => false
            ))
            ->add('image2', 'file', array(
                'data_class' => null, 'required' => false
            ))
            ->add('style', new StyleType())
            ->add('isVerb', 'checkbox', array('label' => 'Verbe', 'required' => false))
            ->add('isActive', 'checkbox', array('label' => 'Activé', 'required' => false));

            $action = $this->parentFunctionalId != null ? $this->parentFunctionalId : '/app_dev.php/themes';
            $submitLabel = $this->edit ? 'edit' : 'create';
            $builder->setAction($action)
                    ->add($submitLabel, 'submit');

    }

    public function setDefaultOptions(OptionsResolverInterface $resolver) {
        $resolver->setDefaults(array(
            'data_class' => 'MyApp\BusinessBundle\Entity\Theme'
        ));
    }

    public function getName() {
        return 'translations';
    }

}
塞西

您应该使用第二个属性,$image1Filename其中包含上载文件的文件名。

这样,您可以检查表单在发布时是否包含文件,并“手动”处理文件上传(最终通过生命周期回调事件)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Symfony2中创建具有一个实体的多行的表单

没有实体的Symfony2简单文件上传编辑

Symfony2:具有空值的实体表单字段

在Symfony2实体字段中添加JQuery自动完成功能

具有文件类型字段editAction的Symfony 3表单集合实体

Symfony2在父实体和扩展实体中使用一个字段,具有不同的注释/映射

自升级以来,我所有的Symfony2 formbuilder实体字段均已消失

symfony2具有多个字段的UniqueEntity

Symfony2从具有ManyToMany关系的反向实体获取对象

Symfony2生成带有选项的实体字段

Symfony2 CRUD生成“ CRUD生成器期望实体对象具有主键字段...”

Symfony2,YML文件,实体和表单中的验证

Symfony2 formbuilder-实体只读字段作为标签

具有实体类的Symfony2 FormBuilder

Symfony2 YAML实体字段未绑定

Symfony2:动态更改实体字段类型的类属性

Symfony2 FormType实体字段类型

在Symfony2中预先选择具有就绪实体的表单

具有条件和参数的Symfony2实体

验证Symfony2实体选择字段

在Symfony2中将实体字段类型显示为每个实体的某些属性的表

Symfony2,如何显示来自具有ManyToMany关联的实体的数据

无法更新实体Symfony2

Symfony2形式的实体字段,具有多个,选择集设置后不保留数据

具有170k结果的Symfony2 Form字段实体

使用来自其他实体symfony2的数据更新实体字段

具有动态更新的Symfony2 Highcharts-Bundle

Symfony2表单-如何自动填充相关实体的字段?

Doctrine Symfony2 与现有实体保持关联实体