2016-06-12 55 views
0

我想为我的用户提供上传他们的简历/支票并将其替换到他们的个人资料页面的可能性。symfony 3文件上传或下载链接形式

上传文件的工作很完美,但如果文件已经上传,我需要提供下载链接,而不是用户的配置文件表单中的文件上传器。

我想知道在哪里/如何做到这一点?

我使用学说来存储我的实体

/** 
    * 
    * @ORM\Column(type="string", nullable=true) 
    * @Assert\File(mimeTypes={"application/pdf","application/x-pdf","text/pdf","text/x-pdf"}) 
    */ 
    private $cv; 

和FormType链接到我的实体生成配置文件的页面形式。

/** 
* @param OptionsResolver $resolver 
*/ 
public function configureOptions(OptionsResolver $resolver) 
{ 
$resolver->setDefaults(array(
'data_class' => Worker::class)); 
} 

public function buildForm(FormBuilderInterface $builder, array 
$options) 
{ 
    $builder->add('username') 
       ... 
      ->add('cv', FileType::class, array('label' => 'CV')) 

是利用相同配置文件的类型的buildForm一个FormEvent切换“CV”的字段的类型在构建器一个很好的选择?还是有更好的方法来实现这一目标?

在此先感谢

回答

0

建议你用VichUploaderBundle on Symfony's site甚至看该页面以供参考。我使用它,即使在现有的类上也很容易实现。

+0

谢谢我会看看这个软件包。 我按照文档来上传工作。它的确如此,但我担心的是将实体加载回来。我得到一个上传字段,我想要一个下载链接来检索附加到我的实体的文件。 – Kevin

+0

我使用这个:''在我的系统上;其中“att”是一个附件实体。这一切都使用VichUploaderBundle。我认为这应该适合你。如果你认为我能帮上忙,那么我可以大声回应我的回答,我将不胜感激。让我知道你是否需要进一步的帮助。 –