我正在导入 gmail 联系人,一些用户有大量联系人需要很长时间才能保存在数据库中。如何在延迟作业中使用异步在后台运行。我正在使用delay_job gem
这是我写的代码
token = Google::Authorization.exchange_singular_use_for_session_token(params[:token])
unless token == false
@contacts = Google::Contact.all(token)
@contacts.each do |contact|
next if contact.email.nil?
c = {
:user_id => current_user.id,
:source => 'gmail',
:name => contact.name,
:email => contact.email
}
c = Contact.find_or_initialize_by_email(c[:email])
c.update_attributes(c)
end
end