【发布时间】:2016-08-23 11:29:54
【问题描述】:
我有一个 html 文件 generate_invoice.html.erb。我必须在同一个文件上提供一个按钮才能将 generate_invoice.html.erb 转换为可下载的 pdf。我尝试使用 wicked pdf gem 和 gem 'wkhtmltopdf-binary'
然后我还创建了 config/initializers/wicked_pdf.rb 并将 mime 类型设置为 pdf
我的路线如下:
match 'orders/:id/invoice' => 'orders#order_invoice', as:
'order_invoice', via: [:put,:post,:get]
我的order_controller如下
def order_invoice
@base_url = ENV['base_url']
@order = Order.includes(:status, :user, payment:
[:status]).where(id: params[:id]).first
if (['Notary', 'Attestation','Franking'].include?
@order.service.name)
@no_of_copies = ((@order.answers.where(question_id:
[37,15]).length
> 0) ? @order.answers.where(question_id: [37,15]).first.body :
0).to_i
else
@no_of_copies = ((@order.answers.where(question_id:
[37,15]).length
> 0) ? @order.answers.where(question_id: [37,15]).first.body :
0).to_i + 1
end
render 'order_mailer/generate_invoice',layout: false
respond_to do |format|
format.pdf do
render pdf: "order_invoice"
end
end
结束
但它会抛出此错误
ActionController::UnknownFormat at /admin/orders/131/invoice
ActionController::UnknownFormat
基本上它指向 respond_to do |format| 行
我做错了什么。请帮我纠正这个问题。也请告诉我下一步如何实现pdf格式
【问题讨论】:
-
尝试在...之后添加format.html以及... |format|
标签: ruby-on-rails ruby pdf wicked-pdf