2012-02-20 8 views
0

私はFacebook APIでデータを収集しており、Koalaのget_objectリクエストは遅いので、delayed_job_active_recordを使用しようとしています。しかし、各doループでモデルを更新するのが難しいです。 @facebookはIDの配列で、.delayメソッドを使用しないときに機能しますが、使用すると保存されません。doループとdelayed_jobでモデルを更新するにはどうすればよいですか?

これを動作させるにはどうすればよいですか? .delayをどこに置くべきか、それを別に書く必要があるかどうかはわかりません。ご協力いただきありがとうございます!

@facebook.each do |f| 
Like.find_by_f_id(f).delay.name = @graph.get_object(f)["name"] 
Like.find_by_f_id(f).delay.category = @graph.get_object(f)["category"] 
Like.find_by_f_id(f).delay.save 
end 

答えて

1

これを試してみてください:

@facebook.each do |f| 
    Like.find_by_f_id(f).delay.update_attributes(
    :name => @graph.get_object(f)["name"], 
    :category => @graph.get_object(f)["category"]) 
end 
+0

が、それは働きました!ページはバックグラウンドプロセスが完了するまでロードを続けますが、現在は自分の認証で#アクションを作成しています。助言がありますか? – ahuang7