将 Prawn PDF 保存为回形针附件?
我使用 Prawn 和 Prawnto 向用户显示基于 PDF 的报告,但在某些情况下,我还想将 PDF 保存为我的模型之一的附件。我所有的附件都使用回形针。有人对如何做到这一点有任何建议吗?
谢谢!
I'm using Prawn and Prawnto to display a PDF-based reports to the user, but in some circumstances, I'd also like to save the PDF as an attachment to one of my models. I'm using Paperclip for all of my attachments. Does anyone have any suggestions on how to do this?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
使用 prawnto 时,您需要评估 .pdf.prawn 模板中的变量。
第二步是模仿真实的回形针文件。
生成 PDF:
用回形针保存 PDF:
希望这会有所帮助。
When using prawnto you will need to eval the variables in the .pdf.prawn template.
Second step is to mimic a real file for paperclip.
Generating the PDF:
Save PDF with paperclip:
Hope this helps.
如果您只是将对该 PDF 的文件引用传递给 Paperclip,它应该可以工作。
It should work if you just pass a File reference to that PDF to Paperclip.
我通过相反的方式使其无需实例评估即可工作:在模型中生成 PDF 并在控制器中渲染它
在模型中:
然后可以将其作为邮件附件发送:
或者在浏览器窗口中渲染它控制器 :
I got it working without instance eval by turning it the other way around : generate the PDF in your model and render it in you controller
In a model :
You can then send it as a mail attachment :
Or render it in your browser windows in your controller :
这对我有用
其中
certificate
是我的回形针附件在模型中保存的内容:This worked for me
Where
certificate
is what my paperclip attachment is saved as in the model:@Adam Albrecht,您将把图像保存为附件,但是为了将 pdf 保存为附件,您需要再添加一个验证 -
****validates_attachment :document, content_type: { content_type: 'application/ pdf' }****
@Adam Albrecht,You will be saving image as a attachment but for saving pdf as an attachment you need to add one more validation -
****validates_attachment :document, content_type: { content_type: 'application/pdf' }****