我正在使用 Prawn 和 Prawnto 在 Ruby on Rails 应用程序(Rails 版本 2.2.2)中生成 PDF,它运行良好,可以愉快地生成 PDF 并将它们发送给用户以在 Firefox 中下载。
问题出在 IE7 中。
我有一个这样设置的路线:
map.invoice_pdf '/invoices.pdf', :controller => 'invoices',
:action => 'index', :format => 'pdf'
然后我有一个这样的链接:
invoice_pdf_path(:year => params[:year], :month => params[:month],
:unpaid_only => params[:unpaid_only])
我的控制器中有以下内容:
def index
params[:year] = default params[:year]
params[:month] = default params[:month]
params[:page] ||= 1
@invoices = Arobl.find_invoices_for_customer(current_customer.strCustomerID,
params)
respond_to do |format|
format.html{ render :action => 'index' }
format.pdf{
prawnto :inline => false, :filename =>
"#{current_customer.strCustomerID}_invoice.pdf"
end
在 FF 中,这按预期工作,当单击链接时,会以 .pdf 格式调用显示操作,并以正确命名的 PDF 进行响应。当它被 IE7 击中时,它说找不到文件或网站,并引用“invoices.pdf”而不是预期的 customer_id_invoice.pdf 文件名。
知道什么可能导致这种行为吗?
谢谢!