aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
diff options
context:
space:
mode:
authorRafael França <rafaelmfranca@gmail.com>2016-11-11 14:08:37 -0500
committerGitHub <noreply@github.com>2016-11-11 14:08:37 -0500
commita5e933410dcbf097c5f180ec7ce9b3567a9e3514 (patch)
treee1632fcd35826047dec6c5ad979c017e3638e1d1 /activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
parentcac3be6341f95c9a347d62173a4a130d1e42141b (diff)
parent3dce96a6b1242452860e3a9560ccfb357cede0b1 (diff)
downloadrails-a5e933410dcbf097c5f180ec7ce9b3567a9e3514.tar.gz
rails-a5e933410dcbf097c5f180ec7ce9b3567a9e3514.tar.bz2
rails-a5e933410dcbf097c5f180ec7ce9b3567a9e3514.zip
Merge pull request #27008 from kirs/new-column-from-field
Refactor column initialization into `new_column_from_field`
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb18
1 files changed, 7 insertions, 11 deletions
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 6f334f5c8d..cbbba5b1a5 100644
--- a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
@@ -398,18 +398,14 @@ module ActiveRecord
indexes
end
- # Returns an array of +Column+ objects for the table specified by +table_name+.
- def columns(table_name) # :nodoc:
- table_name = table_name.to_s
- column_definitions(table_name).map do |field|
- type_metadata = fetch_type_metadata(field[:Type], field[:Extra])
- if type_metadata.type == :datetime && field[:Default] == "CURRENT_TIMESTAMP"
- default, default_function = nil, field[:Default]
- else
- default, default_function = field[:Default], nil
- end
- new_column(field[:Field], default, type_metadata, field[:Null] == "YES", table_name, default_function, field[:Collation], comment: field[:Comment].presence)
+ def new_column_from_field(table_name, field) # :nodoc:
+ type_metadata = fetch_type_metadata(field[:Type], field[:Extra])
+ if type_metadata.type == :datetime && field[:Default] == "CURRENT_TIMESTAMP"
+ default, default_function = nil, field[:Default]
+ else
+ default, default_function = field[:Default], nil
end
+ new_column(field[:Field], default, type_metadata, field[:Null] == "YES", table_name, default_function, field[:Collation], comment: field[:Comment].presence)
end
def table_comment(table_name) # :nodoc: