从后端生成报告,然后使用Carrierwave宝石红宝石上传到s3

时间:2019-05-26 18:30:06

标签: ruby-on-rails carrierwave

我有Axlsx :: Package.new对象,该对象用于在后端创建excel文件,现在我必须使用carrierwave gem将这个excel文件上传到s3。我有文件路径或Axlsx :: Package.new对象,但在两种情况下,它抛出的文件都不能为空白。.我不确定我在做什么错。 请帮助我如何实现这一目标。

  

类附件

当我执行此行时,没有ActionDispath :: FileUpload对象,因为我不是从UI窗体在后端创建文件。由于这个原因,我有

  

file = Axlsx :: Package.new   file_path =“ uploads / exports / download_request _#{current_datetime} .xlsx”

 attachment = Attachment.create!(file: file, entity_type: self.class)

我也尝试了file和file_path,但是它不起作用,并且抛出文件不能为空...

class Attachment < ApplicationRecord
  # CarrierWave
  mount_uploader :file, AttachmentUploader
  validates :file, presence: true
 end

如果我使用输入类型文件标签从UI表单上载文件,它应该保存到s3上。

请帮助

0 个答案:

没有答案