From 6955d864ceb0ba994ef4fb4c5e866463f247944b Mon Sep 17 00:00:00 2001 From: Yves Senn Date: Wed, 11 Jun 2014 08:23:17 +0200 Subject: fk: rename `dependent` to `on_delete` --- .../connection_adapters/abstract/schema_creation.rb | 11 +++++------ .../connection_adapters/abstract/schema_definitions.rb | 4 ++-- .../connection_adapters/abstract/schema_statements.rb | 2 +- .../connection_adapters/abstract_mysql_adapter.rb | 4 ++-- .../connection_adapters/postgresql/schema_statements.rb | 4 ++-- activerecord/lib/active_record/schema_dumper.rb | 2 +- 6 files changed, 13 insertions(+), 14 deletions(-) (limited to 'activerecord/lib') diff --git a/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb b/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb index 57790d5667..aad4431910 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb @@ -24,7 +24,7 @@ ADD CONSTRAINT #{quote_column_name(o.name)} FOREIGN KEY (#{quote_column_name(o.column)}) REFERENCES #{quote_table_name(o.to_table)} (#{quote_column_name(o.primary_key)}) SQL - sql << " #{dependency_sql(o.dependent)}" if o.dependent + sql << " #{action_sql(o.on_delete)}" if o.on_delete sql end @@ -101,12 +101,11 @@ FOREIGN KEY (#{quote_column_name(o.column)}) options.include?(:default) && !(options[:null] == false && options[:default].nil?) end - def dependency_sql(dependency) + def action_sql(action = "DELETE", dependency) case dependency - when :nullify then "ON DELETE SET NULL" - when :delete then "ON DELETE CASCADE" - when :restrict then "ON DELETE RESTRICT" - else "" + when :nullify then "ON #{action} SET NULL" + when :cascade then "ON #{action} CASCADE" + when :restrict then "ON #{action} RESTRICT" end end end diff --git a/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb b/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb index 66ebf82971..2d6cf2427c 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb @@ -38,8 +38,8 @@ module ActiveRecord options[:primary_key] end - def dependent - options[:dependent] + def on_delete + options[:on_delete] end end diff --git a/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb b/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb index 0f2af2c6d2..3f72e35bb5 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb @@ -654,7 +654,7 @@ module ActiveRecord column: options[:column], primary_key: primary_key, name: foreign_key_name(from_table, options), - dependent: options.fetch(:dependent, nil) + on_delete: options.fetch(:on_delete, nil) } at = create_alter_table from_table at.add_foreign_key to_table, options diff --git a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb index 9610296043..f3b7fe172e 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb @@ -531,8 +531,8 @@ module ActiveRecord } if create_table_info =~ /CONSTRAINT #{quote_column_name(row['name'])} FOREIGN KEY .* REFERENCES .* ON DELETE (CASCADE|SET NULL|RESTRICT)/ - options[:dependent] = case $1 - when 'CASCADE' then :delete + options[:on_delete] = case $1 + when 'CASCADE' then :cascade when 'SET NULL' then :nullify end end diff --git a/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb b/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb index 7b61ff81ba..bf87395ef1 100644 --- a/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb +++ b/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb @@ -470,8 +470,8 @@ ORDER BY c.conname primary_key: row['primary_key'] } - options[:dependent] = case row['dependency'] - when 'c'; :delete + options[:on_delete] = case row['dependency'] + when 'c'; :cascade when 'n'; :nullify when 'r'; :restrict end diff --git a/activerecord/lib/active_record/schema_dumper.rb b/activerecord/lib/active_record/schema_dumper.rb index c415236c45..cdbb374510 100644 --- a/activerecord/lib/active_record/schema_dumper.rb +++ b/activerecord/lib/active_record/schema_dumper.rb @@ -226,7 +226,7 @@ HEADER 'primary_key: ' + foreign_key.primary_key.inspect, 'name: ' + foreign_key.name.inspect ] - parts << ('dependent: ' + foreign_key.dependent.inspect) if foreign_key.dependent + parts << ('on_delete: ' + foreign_key.on_delete.inspect) if foreign_key.on_delete ' ' + parts.join(', ') end -- cgit v1.2.3