Я использую rails 3.0 и PDFKit. SASS и HAML, но я еще не реализовал конвейер активов.Рельсы 3.0 PDFKit, включают в себя активы и image_tag при генерации PDF, вызванных граблиной задачей
Если я звоню с контроллера, я могу создать идеальный стилизованный pdf с изображениями, вызывая PDFKit.new, передающий render_to_string: show. Но если бы я сделать то же самое через задачу граблей, мой PDF генерируется без стилей, и IMAGE_TAG помощник выдает ошибку, как это:
can't convert nil into String
Конечно, я делаю что-то неправильно в задаче грабли. .. но все работает в контроллере ... Что мне не хватает? Должен ли я включить что-то в задачу рейка? или, возможно, использовать другое представление со встроенными стилями и абсолютными путями? вызовы таковы:
CONTROLLER версия
def generate_html_invoice
render_to_string :show, layout: 'mypdflayout'
end
mypdf = PDFKit.new html_generator
RAKE ЗАДАЧА версия
def generate_html_invoice
invoice_view = ActionView::Base.new(MyWeb::Application.config.paths["app/views"].first)
invoice_view.assign({ ....... various params here})
html_invoice = invoice_view.render(template: "invoices/show", layout: 'mypdflayout')
return html_invoice
mypdf = PDFKit.new html_generator
Та же ошибка возникает при image_tag
хелперов и stylesheet_link_tag
помощник
Альтернативный способ может быть Instantiate контроллер в задаче грабли, но .. возможно ли это? и, это хорошая практика?