我已经将pdfkit与我的rails 3应用程序集成,通过将其添加到中间件中,它运行得很好。
每个具有.pdf
的页面都会在浏览器中显示页面的pdf版本。
我希望pdf文件能够被下载而不是在浏览器中显示。 我该如何做到这一点?
谢谢
我已经将pdfkit与我的rails 3应用程序集成,通过将其添加到中间件中,它运行得很好。
每个具有.pdf
的页面都会在浏览器中显示页面的pdf版本。
我希望pdf文件能够被下载而不是在浏览器中显示。 我该如何做到这一点?
谢谢
我也遇到过这个问题。看到这个问题后,我更深入地研究了这个问题。虽然有点棘手,但事实上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
这很简单,
send_data @pdf, :filename => "whatever.pdf",
:type => "application/pdf",
:disposition => "inline" # either "inline" or "attachment"
使用内联选项(在浏览器中查看PDF文件)或附件选项(下载PDF文件)