class AddPicToInboxMigration < ActiveRecord::Migration[5.0] def change FacebookPage.find_each do |inbox| begin url = "http://graph.facebook.com/"<< inbox.page_id << "/picture?type=large" uri = URI.parse(url) tries = 3 begin response = uri.open(redirect: false) rescue OpenURI::HTTPRedirect => redirect uri = redirect.uri # assigned from the "Location" response header retry if (tries -= 1) > 0 raise end pic_url = response.base_uri.to_s puts pic_url.inspect rescue => e pic_url = nil end inbox.remote_avatar_url = pic_url inbox.save! end end end