Rails:如何保存使用 wicked pdf 生成的 pdf 文件

发布于 2024-10-17 10:08:38 字数 487 浏览 0 评论 0原文

我正在使用 WickedPdf

respond_to do |format|
  format.html
  format.pdf do
    render :pdf => "file_name"
  end
end  

这工作正常。用户可以下载生成的 pdf 。但我需要将生成的pdf存储在服务器中用于其他目的,例如邮寄等 我怎样才能保存这个生成的pdf?

我尝试了以下方法,但不知道如何将 html 传递给 wickedpdf wicked_pdf 不起作用 - Ruby on Rails

提前致谢

I am using WickedPdf

respond_to do |format|
  format.html
  format.pdf do
    render :pdf => "file_name"
  end
end  

This is working fine . the user is able to download the generated pdf . but i need to store the generated pdf in server for other purposes like mailing etc etc
How can i save this generated pdf ?

i tried the following but no idea how to pass the html to wickedpdf
wicked_pdf doesn't work -- Ruby on Rails

thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浮生未歇 2024-10-24 10:08:38

您可能已经明白了这一点,但我现在正在学习 WickedPdf,并且刚刚学习了如何直接保存在控制器的 respond_to 块中。 Git 页面上有关于此 https://github.com/mileszs/wicked_pdf 的精彩文档。这是我在控制器中用于显示操作的内容:

  def show
@user = User.find(params[:id])
respond_to do |format|
  format.html # show.html.erb
  format.pdf do
    render :pdf => "#{@user.name}",
    :save_to_file => Rails.root.join('pdfs', "#{@user.name}.pdf")
  end
end
end  

这最终将其保存到我的根目录中名为“pdfs”的文件夹中,作为用户名.pdf。希望有帮助。

You probably figured this out already, but I'm learning WickedPdf right now and just learned how to save directly in your controller in the respond_to block. There is great documentation on the Git page for this https://github.com/mileszs/wicked_pdf. Here's what I have in my controller for the show action:

  def show
@user = User.find(params[:id])
respond_to do |format|
  format.html # show.html.erb
  format.pdf do
    render :pdf => "#{@user.name}",
    :save_to_file => Rails.root.join('pdfs', "#{@user.name}.pdf")
  end
end
end  

This ends up saving it to a folder in my root called "pdfs" as the username.pdf. Hope that helps.

橙味迷妹 2024-10-24 10:08:38

据我所知,您无法直接保存 respond_to 块中的文件,您需要某种脚本来实际访问带有 .pdf 扩展名的页面,并保存它。

我推荐 wkhtmltopdf 因为我经常使用它并且它可以很好地呈现 PDF。这将允许您将 PDF 保存到文件系统。

As far as I'm aware you cannot save files from the respond_to block directly, you'll need some sort of script that actually visits that page with the .pdf extension, and saves it.

I recommend wkhtmltopdf as I use it quite often and it renders PDF's very well. This will allow you to save the PDF to the file system.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文