aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2014-06-10 12:09:58 +0200
committerYves Senn <yves.senn@gmail.com>2014-06-26 22:03:48 +0200
commita48b675d54101b048228d1011ffa426c2b7fe94d (patch)
tree94737f11dfa1a6f1d28ff7a22f78635ccbf89312 /activerecord/lib/active_record/connection_adapters
parent1c170fdea2be04691c7daa8266084766fe963fff (diff)
downloadrails-a48b675d54101b048228d1011ffa426c2b7fe94d.tar.gz
rails-a48b675d54101b048228d1011ffa426c2b7fe94d.tar.bz2
rails-a48b675d54101b048228d1011ffa426c2b7fe94d.zip
fk: `:primary_key` option for non-standard pk's.
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters')
-rw-r--r--activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb4
1 files changed, 3 insertions, 1 deletions
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 da6b15dad0..db04ebc802 100644
--- a/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb
@@ -647,9 +647,11 @@ module ActiveRecord
end
def add_foreign_key(from_table, to_table, options = {})
+ primary_key = options.fetch(:primary_key, "id")
+
options = {
column: options.fetch(:column),
- primary_key: "id",
+ primary_key: primary_key,
name: foreign_key_name(from_table, options)
}
at = create_alter_table from_table