diff --git a/activerecord/CHANGELOG.md b/activerecord/CHANGELOG.md index 7d4d882bc132f683a4de16040903a0433c652d8e..1b83021ff2607142018935617f16af61b5231374 100644 --- a/activerecord/CHANGELOG.md +++ b/activerecord/CHANGELOG.md @@ -1,3 +1,7 @@ +* Fix table comment also being applied to the primary key column. + + *Guilherme Goettems Schneider* + * Fix merging left_joins to maintain its own `join_type` context. Fixes #36103. 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 d1b7e913f51ba962f235c42e8d5fd796b6032678..daa38b9a66e408c77bc039e0289f7d7d0a473c09 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb @@ -302,7 +302,7 @@ def create_table(table_name, **options) if pk.is_a?(Array) td.primary_keys pk else - td.primary_key pk, options.fetch(:id, :primary_key), options + td.primary_key pk, options.fetch(:id, :primary_key), options.except(:comment) end end diff --git a/activerecord/test/cases/comment_test.rb b/activerecord/test/cases/comment_test.rb index 584e03d19654560174dcf0a2a989ffa52d385f8c..f2f28462d1ba19c56a43a291243792d96012da20 100644 --- a/activerecord/test/cases/comment_test.rb +++ b/activerecord/test/cases/comment_test.rb @@ -44,6 +44,11 @@ class BlankComment < ActiveRecord::Base @connection.drop_table "blank_comments", if_exists: true end + def test_primary_key_comment + column = Commented.columns_hash["id"] + assert_nil column.comment + end + def test_column_created_in_block column = Commented.columns_hash["name"] assert_equal :string, column.type