Как загрузить изображение на s3 с CarrierWave? - PullRequest
0 голосов
/ 14 ноября 2018

Я создаю приложение, которое мне нужно, чтобы обрезать аватар пользователя, используя JCrop.

Мое приложение работает отлично, работает локально. Но теперь я хочу сделать шаг вперед и загрузить это на s3.

class AvatarUploader < CarrierWave::Uploader::Base
  include CarrierWave::MiniMagick
  storage :file


  version :thumb do
    process :crop
    resize_to_fill(100, 100)
  end

  version :tiny, from_version: :thumb do
    process resize_to_fill: [20, 20]
  end

  version :large do
    resize_to_limit(600, 600)
  end

  def crop
    if model.crop_x.present?
      resize_to_limit(600, 600)
      manipulate! do |img|
        x = model.crop_x.to_i
        y = model.crop_y.to_i
        w = model.crop_w.to_i
        h = model.crop_h.to_i
        # [[w, h].join('x'),[x, y].join('+')].join('+') => "wxh+x+y"
        img.crop([[w, h].join('x'),[x, y].join('+')].join('+'))
      end
    end
  end
end

Как я могу это сделать, не используя что-то вроде тумана? У меня проблемы при попытке настроить туман с моим приложением из-за версии rails.

Любая помощь?

...