rails send_file和send_data发送零字节文件

时间:2011-01-30 09:13:35

标签: ruby-on-rails pdftk temporary-files sendfile

我正在尝试向用户发送pdf,但我遇到严重的问题,让send_file和send_data工作。我按如下方式创建了pdf文件:

tmp = Tempfile.new('filled')
new_tmp_path = PDFPrint.fill_form_using_pdftk(template_path, tmp.path)
send_file (new_tmp_path, :filename => 'filled.pdf')

浏览器提示下载,但下载的filled.pdf文件为零字节。 我已经验证new_tmp_path确实包含有效的pdf(好的,填充的内容)

我试过这个:

File.open(new_tmp_path, 'r') do |f|
  send_data(f.read, :filename => "filled.pdf")
end

但是这也给了我相同的download->零字节问题,而服务器上的文件(new_tmp_path)具有完美的内容。

问候,

1 个答案:

答案 0 :(得分:0)

尝试发送一个简单的文件以查看它是否有效

send_file '/path/to.jpeg', :type => 'image/jpeg', :disposition => 'inline'

阅读this thread,我认为它拥有您需要的一切。