背景:後處理S3資產與回形針
我已經實現用戶定義的裁剪圖像上傳大致爲每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.我已經看過其他答案。
Paperclip looking for file locally for reprocessing when using S3 - 似乎相關,但唯一的答案是降低迴形針。我做不到,除此之外,這個答案既沒有被提出也沒有被接受。
Error reprocessing in Paperclip 2.3.5 - 這是關於Paperclip的舊版本。
其他的想法:
它發生,我認爲另一個方法是將文件存儲在本地,直到它已被裁剪,然後用DelayedJob或類似的東西把它上傳到S3以後。雖然這會有更多的工作,所以我現在寧願避免它。
嗨,我實際上已經把一切都轉移到蜻蜓前段時間了!但在git中,原始代碼是:'has_attached_file:picture,:styles => {...},:default_url =>'missing_:class_:attachment/missing_:style.png',:storage =>:s3, :s3_credentials => S3_CONFIG' – Leo
嗯,快速瀏覽一下Git的回形針給了我這些鏈接。 本文描述了回形針設置定義的更改: https:// github。com/thoughtbot/paperclip/issues/1405 這篇文章描述了一個類似的問題,但是來自這篇原文的幾年後,仍然是開放的。 https://github.com/thoughtbot/paperclip/issues/2217 這就是說,我相信我已經得到我的圖像重新處理(從S3下拉並重新上傳),所以我會嘗試按照這個教程,構建項目並更新我的答案。 –