Миграция выгруженных файлов из Active Storage в Carrierwave - PullRequest
1 голос
/ 27 сентября 2019

По разным причинам я переношу свои загрузки из ActiveStorage (AS) в CarrierWave (CW).

Я делаю рейк-задачу и разбираюсь в логике - я озадачен тем, как кормитьКапля AS в файл CW.

Я пытаюсь что-то вроде этого:

@files.each.with_index(1) do | a, index |

  if a.attachment.attached?

    a.attachment.download do |file|
      a.file = file
    end
    a.save!

  end

end      

Это основано на этих двух ссылках:

https://edgeguides.rubyonrails.org/active_storage_overview.html#downloading-files

message.video.open do |file|
  system '/path/to/virus/scanner', file.path
  # ...
end

и

https://github.com/carrierwaveuploader/carrierwave#activerecord

# like this
File.open('somewhere') do |f|
  u.avatar = f
end

Я проверил это локально, и файлы не были подключены через загрузчик.Мой вопрос (-ы):

  • я что-то упускаю здесь очевидное?
  • мой подход неверен и нужен новый?

БонусВопрос кармы:

  • Кажется, я не вижу четкого пути для установки имени файла CW, когда я делаю это?
...