5 MB を超えるビデオ ファイルをサーバーに保存するとします。このファイルを保存するためのバックグラウンド ジョブを作成する必要がありますか?
これはどのように行うべきですか?ビデオ モデルには、タイトル、説明、および添付列/フィールドがあります。全て必須項目です。
def create では、「if @video.save」を実行する代わりに、 「if Resque.enqueue(Save, @video)」のようなことを行う必要がありますか?
Resque.enqueue() に引数を渡すとハッシュに変わるため、これがどのように行われるのか正確にはわかりません。次に、" "if Resque.enqueue(Save, @video)" " を使用すると、true または false が期待されます。ただし、Resque.enqueue は何も返すことができません。それとも私が間違っていますか?
ボタンラインです。resque + redisでバックグラウンドワーカーを使用してレコードを保存する適切な方法は何ですか?
理想的には、次のように見えるはずだと考えていました。
def create
@video = Video.new(params[:video])
respond_to do |format|
if Resque.enqueue(Save)
...
end
end
module Save
@queue = :save
def self.perform
video = Video.new(params[:video])
video.save
return true
end
end
あなたの考えは何ですか?