Отчет из бэкэнда для загрузки на s3 с помощью carrierwave gem ruby - PullRequest
0 голосов
/ 26 мая 2019

У меня есть объект Axlsx :: Package.new, который используется для создания файла Excel в бэкэнде, и теперь мне нужно загрузить этот файл Excel в s3 с помощью оператора carrierwave.У меня есть либо путь к файлу, либо объект Axlsx :: Package.new, но в обоих случаях он не может быть пустым. Я не уверен, что делаю неправильно.Пожалуйста, помогите мне, как мне добиться этого.

class Attachment

при выполнении этогострока, где у меня нет объекта ActionDispath :: FileUpload, поскольку я создаю файл в бэкэнде, а не из формы пользовательского интерфейса.из-за этого у меня есть

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

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

iпопробовал с файлом также и file_path также, но он не работает, и бросать файл не может быть пустым ...

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

он должен сохранить в s3, как это работает в случае, когда я загружаю файл из пользовательского интерфейсаФорма с использованием тега типа файла ввода.

Пожалуйста, помогите

...