2015-12-31 28 views
0

我們使用WickedPdf,一個wkhtmltopdf包裝器,用於在屏幕上生成大部分PDF文件,因爲我們可以在HTML和PDF版本中使用相同的.haml文件。使用WickedPdf離線構建PDF文件時無法訪問root_url方法

我想生成一些PDF文件以供將來使用。我們已經在郵件程序中做了這樣的事情來生成並附加PDF。這工作得很好......

# mailer 
pdf = WickedPdf.new.pdf_from_string(render_to_string('account/customer_invoices/show_pdf.html', :layout => 'pdf')) 
attachments["invoice.pdf"] = pdf 

但是當我嘗試同樣的伎倆從模型而不是一個郵件,我得到以下誤差範圍內...

ActionView::Template::Error: 
    undefined method `root_url' for #<#<Class:0x007fad308a8538>:0x007fad308a83d0> 

標準答案我已經從模型內部訪問root_url看到的是添加以下內容,但它不起作用,因爲我實際上是從視圖訪問它,而不是模型。

include Rails.application.routes.url_helpers 

回答

1

如果我理解正確,在視圖中調用root_url

嘗試改變,要

Rails.application.routes.url_helpers.root_url