Module: ActiveRecord::ConnectionAdapters::MySQL::ColumnDumper
- Included in:
- AbstractMysqlAdapter
- Defined in:
- lib/active_record/connection_adapters/mysql/schema_dumper.rb
Overview
:nodoc:
Instance Method Summary collapse
- #column_spec_for_primary_key(column) ⇒ Object
- #migration_keys ⇒ Object
- #prepare_column_options(column) ⇒ Object
Instance Method Details
#column_spec_for_primary_key(column) ⇒ Object
19 20 21 22 23 |
# File 'lib/active_record/connection_adapters/mysql/schema_dumper.rb', line 19 def column_spec_for_primary_key(column) spec = super spec.delete(:auto_increment) if column.type == :integer && column.auto_increment? spec end |
#migration_keys ⇒ Object
25 26 27 |
# File 'lib/active_record/connection_adapters/mysql/schema_dumper.rb', line 25 def migration_keys super + [:unsigned] end |
#prepare_column_options(column) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/active_record/connection_adapters/mysql/schema_dumper.rb', line 5 def (column) spec = super spec[:unsigned] = "true" if column.unsigned? spec[:auto_increment] = "true" if column.auto_increment? if supports_virtual_columns? && column.virtual? spec[:as] = extract_expression_for_virtual_column(column) spec[:stored] = "true" if /\b(?:STORED|PERSISTENT)\b/.match?(column.extra) spec = { type: schema_type(column).inspect }.merge!(spec) end spec end |