mon contrôleur reçoit des données de publication. Il ne s'agit pas d'un formulaire généré par Symfony, mais d'un formulaire personnalisé AngularJS utilisant FormData
.
Les paramètres normaux sont reçus normalement dans le sac de paramètres de demande, mais comment puis-je obtenir le fichier qui est téléchargé? Dois-je faire manuellement la même chose que le handleRequest
du formulaire?
Mon document est le même que le article de livre de cuisine .
J'ai donc besoin d'obtenir un UploadFile à partir de la demande de publication pour appeler cette méthode sur l'entité de document:
public function setFile(UploadedFile $file = null)
Comment puis-je recevoir un téléchargement manuellement dans Symfony 2 (sans utiliser le générateur de formulaire de quelque manière que ce soit)?
Request a un FileBag, similaire au ParameterBag
J'ai donc pu obtenir le fichier spécifié facilement avec:
$data = $this->getRequest()->request->all();
$file = $this->getRequest()->files->get('file');
et utilisez le document tel qu'il est extrait du livre de recettes:
$document = new Document();
$document->setFile($file);
$lead->setDocument($document);