aboutsummaryrefslogtreecommitdiffstats
path: root/db/migrate
diff options
context:
space:
mode:
authorAlban Peignier2016-09-09 15:19:25 +0200
committerAlban Peignier2016-09-09 15:20:52 +0200
commite32a3ce4b73363357545a75718478e9d19efc1d8 (patch)
treec2d8465d87f2518fb5e3c3504c991dd96749fbb5 /db/migrate
parent4747990c6d3ceb5020d06099d086500b066db6e4 (diff)
downloadchouette-core-e32a3ce4b73363357545a75718478e9d19efc1d8.tar.bz2
Disable companies foreign keys. Refs #905
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/20160909125235_disable_company_foreign_keys.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/db/migrate/20160909125235_disable_company_foreign_keys.rb b/db/migrate/20160909125235_disable_company_foreign_keys.rb
new file mode 100644
index 000000000..1679a1ed5
--- /dev/null
+++ b/db/migrate/20160909125235_disable_company_foreign_keys.rb
@@ -0,0 +1,17 @@
+class DisableCompanyForeignKeys < ActiveRecord::Migration
+ def change
+ disable_foreign_key :companies, :vj_company_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