Drupal 8 & Drupal 9 - Lancer le téléchargement d'un fichier depuis un formulaire

Posté le Vendredi 17 juin 2022 - 11:50

Voici comment depuis la soumission d'un formulaire déclencher le téléchargement d'un fichier via une BinaryFileResponse :

      /** @var \Drupal\file\Entity\File $menuFile */
      $menuFile = $menu->get('field_file_menu')->entity; // Ici récupération du fichier à télécharger
      $headers = [
        'Content-Type' => $menuFile->getMimeType(),
        'Content-Disposition' => 'attachment;filename="' . $menuFile->getFilename() . '"',
      ];
      $response = new BinaryFileResponse($menuFile->getFileUri(), 200, $headers, true);
      $form_state->setResponse($response);

 

Aller plus loin ?

Commentaires

Thank you for sharing this data. I really enjoy what you've written on your blog. You've shared a very useful and entertaining blog post with the public.

Ajouter un commentaire

Ne sera pas publié

CAPTCHA Désolé, pour ça, mais c'est le seul moyen pour éviter le spam...