wicked_pdf页脚无法渲染

时间:2013-06-20 12:09:55

标签: ruby-on-rails-3.2 wicked-pdf

我安装了这些并使用Mountain Lion:

  • 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 个答案:

答案 0 :(得分:1)

在某些阶段,这可能是您安装wkhtmltopdf的方式的问题,因为它可能无法生成必要的页脚。还注意到你在OSx上,所以我相信你已经下载了wkhtmltopdf here,然后通过cd /usr/local/bin && ln -s /Applications/wkhtmltopdf.app/Contents/MacOS/wkhtmltopdf wkhtmltopdf做某事来cd到正确的目录。

我相信在你的回应栏中你应该有类似的东西:

 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页脚问题的问题,这可以归结为您的安装。如前所述,请查看提供的链接,同时修改您的设置并考虑我提供的建议设置。希望这可以帮助。