我不知道是否有可能做到這一點的Rails:動態創建文件,並下載到用戶的計算機
對網頁的鏈接。當用戶點擊鏈接時,控制器動態生成一個文件(例如,一個包含1到10之間的單個隨機數的文本文件),並將該文件下載到用戶的計算機上。該文件可能暫時存儲在服務器上,但不應該永久存在。
我不知道是否有可能做到這一點的Rails:動態創建文件,並下載到用戶的計算機
對網頁的鏈接。當用戶點擊鏈接時,控制器動態生成一個文件(例如,一個包含1到10之間的單個隨機數的文本文件),並將該文件下載到用戶的計算機上。該文件可能暫時存儲在服務器上,但不應該永久存在。
使用send_data
控制器:
send_data("4", :filename => "my_awesome_file")
如果您已經在服務器上的文件,你可以使用send_file
代替
send_file(filepath, :filename => "my_awesome_file")
http://api.rubyonrails.org/classes/ActionController/DataStreaming.html#method-i-send_data
是的,這是可能的。這是我在我的應用程序之一:
class DownloadsController < ApplicationController
def download
# ...
send_file CSVConstructor::Constructor.new(...).to_zip
end
end
的download
行動發生從表單提交PARAMS並將它們發送到生成幾個文件,將它們打包爲一個zip自定義類,並返回文件路徑。你必須找出爲自己的應用程序生成文件的最佳方式,但我會推薦類似的東西 - 將功能分支到單獨的類中,有助於輕鬆控制控制器。
感謝您的回覆! – John
感謝您的回覆! – John