我试图让wicked_pdf首次在学习RoR的一个项目工作,但我碰到的一个问题。
当我尝试运行任何演示的,我用左右的地方读的format.pdf do
命令,我得到错误“ Too few arguments
”有突出的format.pdf do
线。
这是代码:
def show
format.pdf do
render :pdf => "file_name", :template => 'certificates/show.pdf.erb'
end
end
我在想什么?
试试这个..我有同样的问题。
def show
#format.pdf do
render :pdf => "file_name", :template => 'certificates/show.pdf.erb'
#end
end
我相信你有gems
“wkhtmltopdf二进制”和“wicked_pdf”安装
括
format.pdf do render :pdf => "file_name", :template => 'certificates/show.pdf.erb' end
在respond_to
块,是这样的:
respond_to do |format| format.pdf do render :pdf => "file_name", :template => 'certificates/show.pdf.erb' end end
快速路
安装以下的宝石
gem 'wicked_pdf'
gem 'wkhtmltopdf-binary'
使用该wkhtmltopdf并找出路
创建符号链接
ln -s path_from_which /usr/local/bin/wkhtmltopdf
编辑/创建邪恶初始化
WickedPdf.config = {
#:wkhtmltopdf => '/usr/local/bin/wkhtmltopdf',
#:layout => "pdf.html",
:exe_path => '/usr/local/bin/wkhtmltopdf'
}
在您的控制器找到你的动作和
def show
render pdf: "file_name" # Excluding ".pdf" extension.
end
地址:布局
render :pdf => "notifications",
:layout => 'layouts/pdf/layout.html.erb',
:template => 'notification_compulsories/show.pdf.erb'
我有这个问题,我的解决方案是包括html
格式respond_to
块。 这个
respond_to do |format|
format.pdf { render pdf: "ticket_report" }
end
成为本:
respond_to do |format|
format.html { render :index }
format.pdf { render pdf: "report" }
end
我有这个问题。 您可以添加一个defaults
的散列路线和指定格式。
get "/pdf_name.pdf" => "your_controller#action", as: :pdf_route, defaults: { format: :pdf }