【发布时间】:2012-01-27 10:27:17
【问题描述】:
宝石文件
gem "wicked_pdf"
gem "wkhtmltopdf-binary"
错误:
RuntimeError in CarsController#show
Failed to execute:
/usr/bin/wkhtmltopdf --print-media-type -q - -
Error: PDF could not be generated!
Rails.root: /u/apps/zeepauto/autozeep_update
cars_controller
def show
@class_showcar = true
@class_admin = true
@car = Car.find(params[:id])
@search = Car.search(params[:search])
@cars_see_special = Car.where(:special => "1").order('rand()').limit(3)
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @car }
format.pdf do
render :pdf => "#{@car.carname.name}",
:print_media_type => true
end
end
end
show.html.erb
<p class="show_links"><%= link_to url_for(request.params.merge(:format => :pdf)) do %>
<%= image_tag('/images/printversion.png', :alt => 'Download') %>
</p>
wicked_pdf.erb
# config/initializers/wicked_pdf.rb
WickedPdf.config = {
# :exe_path => '/var/lib/gems/1.8/bin/wkhtmltopdf'
:exe_path => '/usr/bin/wkhtmltopdf'
}
【问题讨论】:
-
您是否真的在 /usr/bin 中安装了 wkhtmltopdf 二进制文件?你能跳到shell并执行“wkhtmltopdfgoogle.comgoogle.pdf”吗?
-
是的。谢谢,我们通过运行包更新命令解决了这个问题。我在 gemfile 中有一个 gem,路径已更改,我们认为这是问题所在。
-
我在 OSX 中仍然遇到同样的问题,将 'wkhtmltopdf-binary' 添加到 gemfile 对我不起作用。 pdfs 的生成工作,只是不在 Rails 中。不过它确实可以在生产服务器上运行。