osem-fcy/db/migrate/20141118162030_change_lodging_association_to_conference.rb
2015-12-23 11:36:50 +02:00

31 lines
877 B
Ruby

class ChangeLodgingAssociationToConference < ActiveRecord::Migration
class TempConference < ActiveRecord::Base
self.table_name = 'conferences'
end
class TempVenue < ActiveRecord::Base
self.table_name = 'venues'
end
class TempLodging < ActiveRecord::Base
self.table_name = 'lodgings'
end
def change
add_column :lodgings, :conference_id, :integer
TempLodging.reset_column_information
# Change association from venue and conference
TempConference.all.each do |conference|
if TempVenue.exists?(conference_id: conference.id)
venue = TempVenue.find_by(conference_id: conference.id)
lodgings = TempLodging.where(venue_id: venue.id)
lodgings.each do |lodging|
lodging.update_attributes(conference_id: conference.id)
end
end
end
remove_column :lodgings, :venue_id, :integer
end
end