send_data不能在浏览器中下载 - Rails

时间:2018-06-10 16:24:53

标签: ruby-on-rails ruby

我尝试将生成的CSV下载到浏览器,但我无法在浏览器中下载文件。

以下是我的尝试:

控制器:

def index
  @campaigns = Campaign.all

  respond_to do |format|
    format.csv { send_data @campaigns.to_csv, filename: "campaigns-#{Date.today}.csv", disposition: "attachment" }
  end
end

MODEL:

def self.to_csv
  attributes = %w(title)

  CSV.generate(headers: true) do |csv|
    csv << attributes

    all.each do |campaign|
      csv << campaign.attributes.values_at(*attributes)
    end
  end
end

当我点击此控制器操作时,它似乎成功创建了数据的CSV,但它并未在浏览器中下载。我在这做错了什么?谢谢!

0 个答案:

没有答案