diff options
| author | Alban Peignier | 2016-05-10 14:28:22 +0200 |
|---|---|---|
| committer | Alban Peignier | 2016-05-10 14:46:53 +0200 |
| commit | 304040cf0fae4673bf5913b0d09da5fda5227b8e (patch) | |
| tree | 84f169e905bcefb292a6906c26820034d88b60b3 /db | |
| parent | 3adb65c09321d6edcec4045be6abeb34fe3bc672 (diff) | |
| download | chouette-core-304040cf0fae4673bf5913b0d09da5fda5227b8e.tar.bz2 | |
Remove foreign keys associated to stop_areas table by waiting Foreigner fix. Refs #833
Diffstat (limited to 'db')
| -rw-r--r-- | db/migrate/20160505140817_disable_stop_area_foreign_keys.rb | 27 | ||||
| -rw-r--r-- | db/schema.rb | 71 |
2 files changed, 72 insertions, 26 deletions
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 diff --git a/db/schema.rb b/db/schema.rb index 99448dd12..2d8e3756e 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20160504160504) do +ActiveRecord::Schema.define(version: 20160505140817) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -209,18 +209,6 @@ ActiveRecord::Schema.define(version: 20160504160504) do t.integer "line_id", limit: 8 end - create_table "jobs", force: true do |t| - t.string "action" - t.datetime "created" - t.string "filename" - t.text "parameters" - t.string "referential" - t.datetime "started" - t.string "status" - t.string "type" - t.datetime "updated" - end - create_table "journey_frequencies", force: true do |t| t.integer "vehicle_journey_id", limit: 8 t.time "scheduled_headway_interval", null: false @@ -249,7 +237,7 @@ ActiveRecord::Schema.define(version: 20160504160504) do create_table "journey_patterns", force: true do |t| t.integer "route_id", limit: 8 - t.string "objectid", null: false + t.string "objectid", null: false t.integer "object_version" t.datetime "creation_time" t.string "creator_id" @@ -259,12 +247,10 @@ ActiveRecord::Schema.define(version: 20160504160504) do t.string "published_name" t.integer "departure_stop_point_id", limit: 8 t.integer "arrival_stop_point_id", limit: 8 - t.integer "route_section_ids", default: [], array: true - t.integer "section_status", default: 0, null: false + t.integer "section_status", default: 0, null: false end add_index "journey_patterns", ["objectid"], :name => "journey_patterns_objectid_key", :unique => true - add_index "journey_patterns", ["route_section_ids"], :name => "index_journey_patterns_on_route_section_ids" create_table "journey_patterns_stop_points", id: false, force: true do |t| t.integer "journey_pattern_id", limit: 8 @@ -298,12 +284,6 @@ ActiveRecord::Schema.define(version: 20160504160504) do add_index "lines", ["objectid"], :name => "lines_objectid_key", :unique => true add_index "lines", ["registration_number"], :name => "lines_registration_number_key" - create_table "links", id: false, force: true do |t| - t.integer "job_id", limit: 8, null: false - t.string "rel" - t.string "type" - end - create_table "networks", force: true do |t| t.string "objectid", null: false t.integer "object_version" @@ -361,8 +341,8 @@ ActiveRecord::Schema.define(version: 20160504160504) do end create_table "route_sections", force: true do |t| - t.integer "departure_id" - t.integer "arrival_id" + t.integer "departure_id", limit: 8 + t.integer "arrival_id", limit: 8 t.string "objectid", null: false t.integer "object_version" t.datetime "creation_time" @@ -613,12 +593,51 @@ ActiveRecord::Schema.define(version: 20160504160504) do add_index "vehicle_journeys", ["route_id"], :name => "index_vehicle_journeys_on_route_id" Foreigner.load + add_foreign_key "access_links", "access_points", name: "aclk_acpt_fkey", dependent: :delete + + add_foreign_key "group_of_lines_lines", "group_of_lines", name: "groupofline_group_fkey", dependent: :delete + add_foreign_key "group_of_lines_lines", "lines", name: "groupofline_line_fkey", dependent: :delete + add_foreign_key "journey_frequencies", "timebands", name: "journey_frequencies_timeband_id_fk", dependent: :nullify add_foreign_key "journey_frequencies", "vehicle_journeys", name: "journey_frequencies_vehicle_journey_id_fk", dependent: :nullify add_foreign_key "journey_pattern_sections", "journey_patterns", name: "journey_pattern_sections_journey_pattern_id_fk", dependent: :delete add_foreign_key "journey_pattern_sections", "route_sections", name: "journey_pattern_sections_route_section_id_fk", dependent: :delete - add_foreign_key "links", "jobs", name: "fk_n5ypxycc1stckgkm6ust2l6on" + add_foreign_key "journey_patterns", "routes", name: "jp_route_fkey", dependent: :delete + add_foreign_key "journey_patterns", "stop_points", name: "arrival_point_fkey", column: "arrival_stop_point_id", dependent: :nullify + add_foreign_key "journey_patterns", "stop_points", name: "departure_point_fkey", column: "departure_stop_point_id", dependent: :nullify + + add_foreign_key "journey_patterns_stop_points", "journey_patterns", name: "jpsp_jp_fkey", dependent: :delete + add_foreign_key "journey_patterns_stop_points", "stop_points", name: "jpsp_stoppoint_fkey", dependent: :delete + + add_foreign_key "lines", "companies", name: "line_company_fkey", dependent: :nullify + add_foreign_key "lines", "networks", name: "line_ptnetwork_fkey", dependent: :nullify + + add_foreign_key "routes", "lines", name: "route_line_fkey", dependent: :delete + add_foreign_key "routes", "routes", name: "route_opposite_route_fkey", column: "opposite_route_id", dependent: :nullify + + add_foreign_key "routing_constraints_lines", "lines", name: "routingconstraint_line_fkey", dependent: :delete + + add_foreign_key "stop_areas", "stop_areas", name: "area_parent_fkey", column: "parent_id", dependent: :nullify + + add_foreign_key "stop_areas_stop_areas", "stop_areas", name: "stoparea_child_fkey", column: "child_id", dependent: :delete + add_foreign_key "stop_areas_stop_areas", "stop_areas", name: "stoparea_parent_fkey", column: "parent_id", dependent: :delete + + add_foreign_key "stop_points", "routes", name: "stoppoint_route_fkey", dependent: :delete + + add_foreign_key "time_table_dates", "time_tables", name: "tm_date_fkey", dependent: :delete + + add_foreign_key "time_table_periods", "time_tables", name: "tm_period_fkey", dependent: :delete + + add_foreign_key "time_tables_vehicle_journeys", "time_tables", name: "vjtm_tm_fkey", dependent: :delete + add_foreign_key "time_tables_vehicle_journeys", "vehicle_journeys", name: "vjtm_vj_fkey", dependent: :delete + + add_foreign_key "vehicle_journey_at_stops", "stop_points", name: "vjas_sp_fkey", dependent: :delete + add_foreign_key "vehicle_journey_at_stops", "vehicle_journeys", name: "vjas_vj_fkey", dependent: :delete + + add_foreign_key "vehicle_journeys", "companies", name: "vj_company_fkey", dependent: :nullify + add_foreign_key "vehicle_journeys", "journey_patterns", name: "vj_jp_fkey", dependent: :delete + add_foreign_key "vehicle_journeys", "routes", name: "vj_route_fkey", dependent: :delete end |
