【发布时间】:2016-09-11 00:33:28
【问题描述】:
我想生成 PDF 文件,所以我尝试使用 PDFKit 但失败了。
单击链接时显示以下错误。
ActionView::MissingTemplate (Missing template /show with {:locale=>[:en], :formats=>[:pdf], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :jbuilder]}. Searched in:
* "/usr/local/rvm/gems/ruby-2.3.0/gems/web-console-2.0.0.beta3/lib/action_dispatch/templates"
* "/home/ubuntu/workspace/app/views"
* "/usr/local/rvm/gems/ruby-2.3.0/gems/web-console-2.0.0.beta3/app/views"
schedules\show.html.erb
<% provide(:title, @schedule.title) %>
<%= render @schedules %>
时间表\_schedule.html.erb
...
<%= link_to "PDF", schedule_path(schedule.id, format: "pdf"), class: "btn btn-sm btn-default" %>
...
schedules_controller.rb
...
respond_to do |format|
format.html # show.html.erb
format.pdf do
html = render_to_string template: "show"
pdf = PDFKit.new(html, encoding: "UTF-8")
send_data pdf.to_pdf,
filename: "#{@scheudles.id}.pdf",
type: "application/pdf",
disposition: "inline"
end
end
...
虽然我创建了show.pdf.erb和_schedule.pdf.erb,它们的内容与html.erb相同,但结果是一样的。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 pdf pdfkit