Search code examples
activerecordruby-on-rails-4sidekiq

Sidekiq worker perform a for_each on a model


I have a worker which needs to loop through many models and save some data into DB.

def perform()
  Project.for_each do |project|
   project.subprojects.for_each do |ps|
    Result.create(ps_id: ps.id)
   end
  end
end

I get as a error:

' "enqueued_at"=>1381919287.982079, "error_message"=>"undefined method for_each' for #<Class:0x007fe5c6b14b40>", "error_class"=>"NoMethodError", "failed_at"=>"2013-10-16T10:29:18Z", "retry_count"=>1, "retried_at"=>2013-10-16 10:30:03 UTC} 2013-10-16T10:30:03Z 12893 TID-ox92y34ec WARN: undefined methodfor_each' for #


Solution

  • You probably meant #find_each:

    Project.find_each