Quelques précisions d'abord. J'essaye tout sur l'environnement de développement local.ruby on rails comment télécharger le fichier csv en utilisant javascript
Dans mon UsersController
j'ai une méthode summary_csv
qui construit un fichier csv et le stocke dans l'emplacement /tmp/your-csv-file.csv
.
Une fois que le système vérifie que le fichier est prêt pour le téléchargement, j'ai un fichier summary_csv.js.erb
qui fonctionne javascript pour aider l'utilisateur télécharger le fichier, en particulier, dans summary_csv.js.erb
, j'essaie de faire window.location="https://stackoverflow.com/users/download_csv";
et il existe une méthode download_csv
dans le contrôleur Users
.
Je veux que le téléchargement se produise, mais pas sûr de 2 choses:
Comment dois-je configurer
routes.rb
pour cette méthodedownload_csv
pour que le téléchargement se passe sans jeter une sorte de « vues manquantes ' Erreur? (à ce stade, je ne me soucie pas si l'utilisateur doit dirigé vers une autre vue ou peut rester sur la même page).Ce qui devrait aller dans le corps de la méthode
download_csv
afin quewindow.location="https://stackoverflow.com/users/download_csv";
va lancer le téléchargement, le fichier situé à/tmp/your-csv-file.csv
?
i essayé et rien ne se passe ... 'development.log' Says « Sent Fichier » mais rien ne se passe ... je faisais ce sur le serveur de développement local .. peut-être pourquoi? –
namesake22
et pour certaines raisons, il déclenche la méthode show' de mes utilisateurs et dit undefined id = download_csv ... – namesake22
@ namesake22 votre méthode show est appelée parce que vous n'avez probablement pas déclaré de route, j'ai essayé de vous dire de déclarer le comme vous le faites pour tous les autres, pour ne pas déclarer hehe. Je vais modifier ma réponse –