Visitar la páginaCrear archivo descargable en Ruby on Rails
localhost:3000/download_me
llama a la acción del controlador download_me en foo controlador.
class foo < ApplicationController
def download_me
# a file is created here i.e. temp.csv in directory C:\
end
end
El controlador deberá crear un archivo csv temporal y después de eso desencadenar una descarga en el navegador que está visitando la página.
¿Cómo puedo hacer eso?
terminé usando 'send_data' en lugar de 'send_file' para esto. No sé si es necesario, pero debido a que tenía un flujo de datos en lugar de un archivo, no tuve que meterme con la E/S del disco, etc. – jaydel
Probablemente sea lo mejor que puede hacer. Respuesta modificada para referencias futuras – Yule
No necesita instalar FasterCSV en la mayoría de los casos. En ruby 1.9.2, el 'CSV' predeterminado es FasterCSV, en ruby 1.8.7 FasterCSV está incluido. – diedthreetimes