【发布时间】:2015-08-17 02:35:07
【问题描述】:
我正在使用 prawn-rails gem 生成 pdf,并通过覆盖控制器中的 @filename 变量来设置文件名,例如:
respond_to do |format|
format.pdf do
@filename = "NewReportName.pdf"
render 'report'
end
end
然后我使用以下视图生成 pdf:
data_rows = [@report.fields.map{|f| f.titleize }]
@report.results.each do |result|
data_rows << @report.fields.map{|k| result.send(k) }
end
prawn_document() do |pdf|
pdf.table(data_rows)
end
pdf 生成适用于我测试过的所有浏览器,但是当您在 IE11 中保存 pdf 时,它将文件名设置为操作名称,而不是 @filename 变量中指定的名称。
我已经在 git repo 上为 prawn-rails gem 发表了评论,但我想知道这里是否有人可以提供帮助。提前致谢。
【问题讨论】:
-
您可以明确设置它。
render 'report', disposition: 'attachment', filename: @filename... 不是 100% 确定语法,但您明白了... -
我尝试在控制器中设置标题,但这并没有解决问题。例如:
response.headers['Content-Disposition'] = "attachment; filename=\"NewReportName.pdf\""
标签: ruby-on-rails ruby internet-explorer pdf prawn