2013-06-20 81 views
1

我有這些安裝和使用山獅:wicked_pdf頁腳不渲染

  • wicked_pdf(0.9.6)
  • QT-4.8.4
  • wkhtmltopdf 0.10.0 RC2

我使用brew install安裝了qt和wkhtmltopdf --devel --build-patched-qt wkhtmltopdf

我正在使用Rails 3.2並將這些代碼放入我的控制器:

render pdf: Time.now.to_i.to_s, 
     layout: false, 
     template: 'invoices/download', 
     disposition: 'attachment', 
     page_size: 'A4', 
     footer: { 
        left: Time.now.to_i.to_s, 
        center: Time.now.to_i.to_s, 
        right: Time.now.to_i.to_s 
       } 

內容生成正常,但沒有頁腳。 有什麼建議嗎?

回答

1

在某些階段,這可能是您安裝wkhtmltopdf的方式的問題,因爲它可能不會生成必要的頁腳。也注意到你的OSX,所以我相信你會下載wkhtmltopdf here,然後通過執行cd /usr/local/bin && ln -s /Applications/wkhtmltopdf.app/Contents/MacOS/wkhtmltopdf wkhtmltopdf來改正目錄。

我相信你的迴應塊內,你應該有這樣的:

respond_to do |format| 
     format.html 
     format.pdf do 
     render :pdf => "#{DateTime.now.to_s}", 
       :footer=> { left: Time.now.to_s, 
          center: Time.now.to_s, 
          right: Time.now.to_s 
       } 

繼這是你在做Time.now.to_i.to_s從我的經驗,這是沒有意義的有點奇怪和肯定,因爲這是不會輸出你想要的。因爲:

Time.now.to_i:這將以秒爲單位返回時間值。

Time.now.to_i 
#=> "1270968656.89607" 

Time.now.to_s:時間返回值作爲一個字符串。

Time.now.to_s 
#=> "2012-11-10 18:16:12 +0100" 

當你正在嘗試做的Time.now.to_i.to_s時就執行它會得到的時間和執行是to_i第一種方法,並說明你的輸出是什麼Imgur - Output。因爲從我的理解你要做的是列出時間將其轉換爲整數,然後將其轉換爲字符串。沒有必要這樣做只需要做Time.now.to_s。至於你的關於wicked_pdf的頁腳問題的問題,這可以歸結爲你的安裝。正如前面提到的看看提供的鏈接,還要修改您的設置並考慮我提供的建議設置。希望這可以幫助。

+0

嗨大衛, 感謝您的迴應。我需要解決我的問題。我通過Homebrew安裝了它。 Time.now.to_i的事情,這是一個較少擔心。只是用它來做我的樣品。順便說一下,如果您嘗試運行Time.now.to_i或任何小數或浮點數to_i,則不應該有小數值,因爲它應該是整數。 – RodM

+0

@RodMedina所以你的問題是關於頁腳出現。您是否嘗試過在我的示例中設置您的響應塊?也請確保你的'wkhtmltopdf'的設置也是正確的。 – David

+0

@David,你爲我節省了很多時間。隨着您的評論,我注意到,頁腳出現或不從服務器到服務器。我會嘗試刪除並重新安裝這個東西。 –