我的控制器收到帖子数据。它不是来自Symfony生成的表单,而是来自使用FormData
的AngularJS自定义表单。
正常参数通常在请求参数包中接收,但如何获取上传的文件?我是否需要手动执行与handleRequest
表单相同的操作?
我的文档与cookbook article相同。
所以我需要从post请求中获取UploadFile以在文档实体上调用此方法:
public function setFile(UploadedFile $file = null)
如何在Symfony 2中手动接收上传(不以任何方式使用表单构建器)?
答案 0 :(得分:57)
Request有一个FileBag,类似于ParameterBag
所以我可以通过以下方式轻松获得指定的文件:
$data = $this->getRequest()->request->all();
$file = $this->getRequest()->files->get('file');
并按照食谱中的说明使用该文件:
$document = new Document();
$document->setFile($file);
$lead->setDocument($document);