aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2019-02-11 13:50:33 +0900
committerRyuta Kamizono <kamipo@gmail.com>2019-02-11 13:55:06 +0900
commitd87afbf46f87a7fb8e9fef5c1b8422cdf386f4cb (patch)
treeffbd3f7ad2c125097135d6d494fe2d222d69c575 /activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
parent9099d66bc38f2e560613258f520d46df624d99c0 (diff)
downloadrails-d87afbf46f87a7fb8e9fef5c1b8422cdf386f4cb.tar.gz
rails-d87afbf46f87a7fb8e9fef5c1b8422cdf386f4cb.tar.bz2
rails-d87afbf46f87a7fb8e9fef5c1b8422cdf386f4cb.zip
More exercise table name prefix and suffix tests
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb b/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
index 7b3630662b..02bbe1ea45 100644
--- a/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb
@@ -320,6 +320,9 @@ module ActiveRecord
def remove_column(table_name, column_name, type = nil, options = {}) #:nodoc:
alter_table(table_name) do |definition|
definition.remove_column column_name
+ definition.foreign_keys.delete_if do |_, fk_options|
+ fk_options[:column] == column_name.to_s
+ end
end
end
@@ -431,7 +434,8 @@ module ActiveRecord
if column = rename[fk.options[:column]]
fk.options[:column] = column
end
- definition.foreign_key(fk.to_table, fk.options)
+ to_table = strip_table_name_prefix_and_suffix(fk.to_table)
+ definition.foreign_key(to_table, fk.options)
end
yield definition if block_given?