aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb9
1 files changed, 8 insertions, 1 deletions
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 c061337e71..7b61ff81ba 100644
--- a/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb
+++ b/activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb
@@ -467,7 +467,14 @@ ORDER BY c.conname
options = {
column: row['column'],
name: row['name'],
- primary_key: row['primary_key'] }
+ primary_key: row['primary_key']
+ }
+
+ options[:dependent] = case row['dependency']
+ when 'c'; :delete
+ when 'n'; :nullify
+ when 'r'; :restrict
+ end
ForeignKeyDefinition.new(table_name, row["to_table"], options)
end
end