2014-03-28 97 views
0

我使用delayed_pa​​perclip將圖像異步上傳到S3。但是,它似乎總是首先加載原始圖像大小,導致長時間延遲,對於其他圖像樣式,我得到以下響應:AWS :: S3 :: Errors :: NoSuchKey No such KeyRails 4 Delayed_Paperclip文件上傳S3 Heroku

model.rb:

has_attached_file :asset, 
    :styles => { large: "800x800>", medium: "500x500>", small: "200x200>", thumb: "40x40#" }, 
    :default_url => "/images/:style/missing.png", 
    :storage => :s3, 
    :bucket => 'X', 
    :s3_credentials => {XY} 

process_in_background :asset 

的delayed_job包括和列添加到模型:

t.boolean "asset_processing" 

謝謝!

回答

0

我正在重命名我的附件的文件名在before_save方法混淆它。文件重命名工作正常,但沒有delayed_paperclip,但是由於延遲的過程,文件重命名無法按預期工作,並且文件路徑被搞砸了,從而導致您的AWS錯誤。

我相信delayed_paperclip上傳原件,然後重新打印它以便稍後進行處理,因爲本地存儲中的原件不再存在。 我把這個重命名代碼移動到paperclip s before_post_process回調,一切工作正常。

也許你正在做類似的事情?希望這可以幫助。

0

感謝您的回覆。 我的問題是,我錯過了工作人員的發展目的。

運行後:bundle exec rake jobs:在我的控制檯中工作,其餘的樣式被加載。