Rails Carrierwave - сжимать файл в определенных условиях - PullRequest
0 голосов
/ 02 мая 2018

Я использую Carrierwave и carrierwave-base64 для загрузки файлов на Amazon S3 .

Как можно сжать загруженные файлы, только если они превышают xMB. Файлы в формате JPEG, PNG и JPG в виде изображений.

1 Ответ

0 голосов
/ 02 мая 2018

Я думаю, вы можете использовать before :store крючок. Например:

before :store, :compress_file

def compress_file(_file)
  file_size = (File.size(file.path).to_f / 2**20)
  if file_size > x
    # compress file
  end
end
...