demarches-normaliennes/db/migrate/20151207140202_update_module_api_carto.rb
2017-06-13 10:35:32 +02:00

44 lines
1.4 KiB
Ruby

class UpdateModuleAPICarto < ActiveRecord::Migration
class Procedure < ActiveRecord::Base
end
class ModuleAPICarto < ActiveRecord::Base
end
def up
remove_column :module_api_cartos, :name
add_index :module_api_cartos, [:procedure_id], unique: true
add_column :module_api_cartos, :use_api_carto, :boolean, default: false
add_column :module_api_cartos, :quartiers_prioritaires, :boolean, default: false
add_column :module_api_cartos, :cadastre, :boolean, default: false
Procedure.all.each do |procedure|
module_api_carto = ModuleAPICarto.new(procedure_id: procedure.id)
module_api_carto.use_api_carto = procedure.use_api_carto
module_api_carto.quartiers_prioritaires = procedure.use_api_carto
module_api_carto.save!
end
remove_column :procedures, :use_api_carto
end
def down
add_column :procedures, :use_api_carto, :boolean, default: false
remove_index :module_api_cartos, [:procedure_id]
Procedure.all.each do |procedure|
procedure.use_api_carto = ModuleAPICarto.find_by(procedure_id: procedure.id).use_api_carto
procedure.save!
end
remove_column :module_api_cartos, :use_api_carto
remove_column :module_api_cartos, :quartiers_prioritaires
remove_column :module_api_cartos, :cadastre
add_column :module_api_cartos, :name, :string
ModuleAPICarto.destroy_all
end
end