Rails comment exporter des données avec send_data puis rediriger vers une nouvelle page?
J'ai une application rails qui permet à un utilisateur de télécharger un fichier CSV généré. Après avoir téléchargé le fichier, je voudrais rediriger l'utilisateur vers une URL ou d'une action. Est-il un truc à faire une redirection après un send_data?
Je veux faire quelque chose comme ceci (qui ne fonctionne pas):
send_data(output,:type => content_type,:filename => "myfile.csv")
redirect_to :controller => 'my_controller', :action => 'download_done'
source d'informationauteur daustin777
Vous devez vous connecter pour publier un commentaire.
send_data
est rendu, de sorte que vous ne pouvez pas faire quoi que ce soit après dans une méthode de contrôleur.Les moyens autour d'elle tous impliquent Javascript. Voici comment j'ai bidouillé et n'a jamais vraiment aimé:
Finalement, j'ai tourné la génération de fichiers en tâche de fond. Ensuite, l'utilisateur a une page emplois (qui n'a pas besoin d'un subséquente de redirection) pour obtenir les fichiers.