33 lines
954 B
Ruby
33 lines
954 B
Ruby
|
class AdminHasAndBelongGestionnaire < ActiveRecord::Migration
|
||
|
class Gestionnaire < ActiveRecord::Base
|
||
|
end
|
||
|
|
||
|
class AdministrateursGestionnaire < ActiveRecord::Base
|
||
|
end
|
||
|
|
||
|
def up
|
||
|
create_table :administrateurs_gestionnaires, id: false do |t|
|
||
|
t.belongs_to :administrateur, index: true
|
||
|
t.belongs_to :gestionnaire, index: true
|
||
|
end
|
||
|
|
||
|
Gestionnaire.all.each do |gestionnaire|
|
||
|
execute "insert into administrateurs_gestionnaires (gestionnaire_id, administrateur_id) values (#{gestionnaire.id}, #{gestionnaire.administrateur_id}) "
|
||
|
end
|
||
|
|
||
|
remove_column :gestionnaires, :administrateur_id
|
||
|
end
|
||
|
|
||
|
def down
|
||
|
add_column :gestionnaires, :administrateur_id, :integer
|
||
|
|
||
|
AdministrateursGestionnaire.all.each do |ag|
|
||
|
gestionnaire = Gestionnaire.find(ag.gestionnaire_id)
|
||
|
gestionnaire.administrateur_id = ag.administrateur_id
|
||
|
gestionnaire.save
|
||
|
end
|
||
|
|
||
|
drop_table :administrateurs_gestionnaires
|
||
|
end
|
||
|
end
|