Фон:Репроцессинг S3 с активами Paperclip
Я реализовал определенный пользователем обрезка на изображение будет загружать примерно как за Ryan Bates Railscast #182.
Это срабатывает при установке метода хранения :file
, но не тогда, когда установлено значение :s3
. Хранилище S3 работало нормально, прежде чем добавлять промежуточный шаг обрезки.
Из журнала сервера, это, кажется, искать исходный файл локально:
[paperclip] An error was received while processing: #<Paperclip::Errors::NotIdentifiedByImageMagickError: /profiles/pictures/000/001/543/original/headshot.jpg is not recognized by the 'identify' command.>
Этот файл присутствует на S3, но не локально к этому моменту, как загрузка будет обработана, прежде чем обрезать (как и после).
Мой вопрос:
Как я могу принести файл вниз от S3 к локальному серверу перед второй стадией процесса?
N.B. Я уже смотрел на другие ответы на SO.
Paperclip looking for file locally for reprocessing when using S3 - кажется актуальным, но единственный ответ относится к понижающему скреплению. Я не могу этого сделать, и, кроме того, этот ответ не поддерживается и не принимается.
Error reprocessing in Paperclip 2.3.5 - речь идет о более старой версии скрепки.
Другие мысли:
Она пришла мне в голову, что другой подход будет хранить файл локально до тех пор, пока не купированы, а затем использовать DelayedJob или что-то подобное, чтобы загрузить его на S3 позже. Это будет больше работы, поэтому, я бы предпочел избежать этого пока.
Привет, я действительно переключил все на Dragonfly некоторое время назад! Но в git исходный код был: 'has_attached_file: picture,: styles => {...},: default_url => 'missing_: class_: attachment/missing_: style.png',: storage =>: s3, : s3_credentials => S3_CONFIG' – Leo
hmmm, быстрый просмотр Git для скрепки дал мне эти ссылки. В этом описании описываются изменения в настройках установки скрепки: https: // github.com/thinkbot/paperclip/issues/1405 Этот пример описывает аналогичную проблему, но через несколько лет после этого оригинального сообщения и остается открытым. https://github.com/thoughtbot/paperclip/issues/2217 Это, я считаю, что я получил свои изображения для обработки (вытащить из s3 и повторно загрузить), поэтому я попытаюсь следовать этому руководству , выстроить проект и обновить мой ответ. –