From 304040cf0fae4673bf5913b0d09da5fda5227b8e Mon Sep 17 00:00:00 2001 From: Alban Peignier Date: Tue, 10 May 2016 14:28:22 +0200 Subject: Remove foreign keys associated to stop_areas table by waiting Foreigner fix. Refs #833 --- ...0160505140817_disable_stop_area_foreign_keys.rb | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 db/migrate/20160505140817_disable_stop_area_foreign_keys.rb (limited to 'db/migrate') diff --git a/db/migrate/20160505140817_disable_stop_area_foreign_keys.rb b/db/migrate/20160505140817_disable_stop_area_foreign_keys.rb new file mode 100644 index 000000000..ffa164dfc --- /dev/null +++ b/db/migrate/20160505140817_disable_stop_area_foreign_keys.rb @@ -0,0 +1,27 @@ +# coding: utf-8 +class DisableStopAreaForeignKeys < ActiveRecord::Migration + def change + disable_foreign_key :stop_points, :stoppoint_area_fkey + disable_foreign_key :connection_links, :colk_endarea_fkey + disable_foreign_key :connection_links, :colk_startarea_fkey + disable_foreign_key :access_links, :aclk_area_fkey + disable_foreign_key :access_points, :access_area_fkey + + disable_foreign_key :route_sections, :route_sections_arrival_id_fk + disable_foreign_key :route_sections, :route_sections_departure_id_fk + + disable_foreign_key :routing_constraints_lines, :routingconstraint_stoparea_fkey + end + + def disable_foreign_key(table, name) + if foreign_key?(table, name) + remove_foreign_key table, name: name + end + end + + def foreign_key?(table, name) + @connection.foreign_keys(table).any? do |foreign_key| + foreign_key.options[:name] == name.to_s + end + end +end -- cgit v1.2.3