2011-12-16 80 views
4

我已將pdfkit與我的rails 3應用程序集成到了中間件中,並且效果很好。 在每個頁面上有.pdf它顯示在瀏覽器中的頁面的pdf版本。使用PDFKit下載pdf

我希望下載pdf並且不會在瀏覽器中顯示。 我該怎麼做?

謝謝

回答

2

我也遇到過這個問題。看到這個問題讓我更深入地探究了這個問題。它有點棘手,但pdfkit確實至少讓你知道.pdf的請求。這或許可以使用一些清理,但是這就是我們正在做的現在:

respond_with @object do |wants| 
    wants.html { 
    if request.env["Rack-Middleware-PDFKit"] 
     pdf_page = render_to_string :layout => "print_out" 
     send_data pdf_page, :filename => "file.pdf" 
    else 
     render :layout => "print_out" 
    end 
    } 
end 
0

這很簡單,

send_data @pdf, :filename => "whatever.pdf", 
      :type => "application/pdf", 
      :disposition => "inline" # either "inline" or "attachment" 

與內嵌選項(您查看瀏覽器PDF文件) 或連接選項(PDF格式文件被下載)