diff options
author | Guillermo Iguaran <guilleiguaran@gmail.com> | 2017-06-16 20:54:27 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-16 20:54:27 -0500 |
commit | a3f758ab0ad7d65bf498980f875c8b3c71e347c0 (patch) | |
tree | 38769f798ed4f3a1b0e38d78d43b3ff0f946356a /activerecord/lib/active_record/connection_adapters/mysql | |
parent | f8f792fa4f7d393f1c00aaef44a76917ddb6c2fb (diff) | |
parent | 675a912eb86a9e109e9877379e8454b388242d57 (diff) | |
download | rails-a3f758ab0ad7d65bf498980f875c8b3c71e347c0.tar.gz rails-a3f758ab0ad7d65bf498980f875c8b3c71e347c0.tar.bz2 rails-a3f758ab0ad7d65bf498980f875c8b3c71e347c0.zip |
Merge pull request #29455 from kirs/remove-column-with-fk-mysql
Remove FK together with column in MySQL
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/mysql')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb b/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb index f9e1e046ea..fc57e41fc9 100644 --- a/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb +++ b/activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb @@ -45,6 +45,13 @@ module ActiveRecord indexes end + def remove_column(table_name, column_name, type = nil, options = {}) + if foreign_key_exists?(table_name, column: column_name) + remove_foreign_key(table_name, column: column_name) + end + super + end + def internal_string_options_for_primary_key super.tap do |options| if CHARSETS_OF_4BYTES_MAXLEN.include?(charset) && (mariadb? || version < "8.0.0") |