diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2016-06-30 02:39:36 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2016-07-02 15:21:02 +0900 |
commit | cf09d5bd63a6c886d0417163de2e966669c52809 (patch) | |
tree | 3284be5e84bb7d9a02d43ae975aebf0dd9e8b3f8 /activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb | |
parent | 8fb699571486ad752741672e6fec1132026d3dfb (diff) | |
download | rails-cf09d5bd63a6c886d0417163de2e966669c52809.tar.gz rails-cf09d5bd63a6c886d0417163de2e966669c52809.tar.bz2 rails-cf09d5bd63a6c886d0417163de2e966669c52809.zip |
Move the warning about composite primary key to `AttributeMethods::PrimaryKey`
Actually schema dumper/creation supports composite primary key (#21614).
Therefore it should not show the warning about composite primary key in
connection adapter.
This change moves the warning to `AttributeMethods::PrimaryKey` and
suppress the warning for habtm join table.
Fixes #25388.
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb | 11 |
1 files changed, 3 insertions, 8 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 eec0bc8518..b1b290ee36 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb @@ -129,14 +129,9 @@ module ActiveRecord # Returns just a table's primary key def primary_key(table_name) - pks = primary_keys(table_name) - warn <<-WARNING.strip_heredoc if pks.count > 1 - WARNING: Rails does not support composite primary key. - - #{table_name} has composite primary key. Composite primary key is ignored. - WARNING - - pks.first if pks.one? + pk = primary_keys(table_name) + pk = pk.first unless pk.size > 1 + pk end # Creates a new table with the name +table_name+. +table_name+ may either |