0

キャリア ウェーブとキャリア ウェーブ バックグラウンダーを使用して、(遅延ジョブを介して) 画像処理を遅らせることができました。画像のアップロードでは、ジョブがキューに入れられますが、残念ながら、アップロード時に同期的に処理も行います。同じ作業を行うスケジュールされたジョブが開始され、イメージ バージョンが再度処理されます。

明らかに、アップロード時にすぐに処理するのではなく、ワーカーからのバージョンのみを処理する必要があります。

Rails 3 モデルの関連部分は次のとおりです。

class Product < ActiveRecord::Base
  include ::CarrierWave::Backgrounder::Delay
  mount_uploader :image, ProductUploader
  process_in_background :image
end

画像がすぐに処理されないようにするにはどうすればよいですか?

4

1 に答える 1

1

変化する:

process_in_background :image

と:

store_in_background :image

注意: store_in_background には、製品のテーブルのimage_tmp (string)の場合、一時的に書き込む列が必要です。

CarrierWave_Backgrounder の readme のUse store_in_backgroundセクションを確認してください。

この回答も役立つ場合があります。

于 2014-09-02T07:59:32.303 に答える