首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我可以使用initialize方法将一个由虾生成的pdf文件保存到profect文件夹吗?

我可以使用initialize方法将一个由虾生成的pdf文件保存到profect文件夹吗?
EN

Stack Overflow用户
提问于 2018-08-16 21:05:42
回答 1查看 363关注 0票数 0

我有一个继承自Prawn::DocumentOrderPdf类,下面是该类的内容:

代码语言:javascript
运行
复制
class OrderPdf < Prawn::Document
  include ActionView::Helpers::NumberHelper
  include ActionView::Helpers::TagHelper

  def initialize(order)
    super(top_margin: 50, size: 12)
    @order = order
    logo
    # Other methods that generate pdf's content
    footer
  end

  def logo
    # Some stuff here
  end

  def footer
    #Some stuff here
  end
end

我这样称呼它:OrderPdf.new(@order)。文件是生成的,但我需要的是保存它到我的项目的名称,类似这样:"#{Rails.root}/public/uploads/orders/order-#{order.order_number}.pdf"我知道,我可以这样做:Prawn::Document.generate("#{Rails.root}/public/uploads/orders/order-#{order.order_number}.pdf"),但我能做一些与现有代码类似的事情吗?谢谢您的支持。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-16 21:38:02

您可以在初始化器中调用render_file方法。

代码语言:javascript
运行
复制
def initialize(order)
  super(top_margin: 50, size: 12)
  @order = order
  logo
  # Other methods that generate pdf's content
  footer
  render_file "#{Rails.root}/public/uploads/orders/order-#{order.order_number}.pdf"
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51877807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档