Wicked_pdf слишком мало аргументов в демо
Я пытаюсь заставить 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
Что мне не хватает?
6 ответов
Попробуйте это.. У меня была такая же проблема.
def show
#format.pdf do
render :pdf => "file_name", :template => 'certificates/show.pdf.erb'
#end
end
Я верю, что у вас есть gems
'wkhtmltopdf-binary' и '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
У меня была эта проблема. Вы можете добавить defaults
хеш к маршруту и укажите формат.
get "/pdf_name.pdf" => "your_controller#action", as: :pdf_route, defaults: { format: :pdf }
Добавить: макет
render :pdf => "notifications",
:layout => 'layouts/pdf/layout.html.erb',
:template => 'notification_compulsories/show.pdf.erb'
Быстрый способ
Установите следующие драгоценные камни
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
У меня была эта проблема, и решение для меня было включить 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