Class: ActiveRecord::Migration::Compatibility::V5_1
- Defined in:
- lib/active_record/migration/compatibility.rb
Direct Known Subclasses
Instance Method Summary collapse
- #change_column(table_name, column_name, type, **options) ⇒ Object
- #create_table(table_name, **options) ⇒ Object
Methods inherited from V5_2
#add_timestamps, #change_table, #create_join_table
Methods inherited from V6_0
#add_reference, #change_table, #create_join_table
Instance Method Details
#change_column(table_name, column_name, type, **options) ⇒ Object
164 165 166 167 168 169 170 171 172 173 |
# File 'lib/active_record/migration/compatibility.rb', line 164 def change_column(table_name, column_name, type, **) if connection.adapter_name == "PostgreSQL" super(table_name, column_name, type, **.except(:default, :null, :comment)) connection.change_column_default(table_name, column_name, [:default]) if .key?(:default) connection.change_column_null(table_name, column_name, [:null], [:default]) if .key?(:null) connection.change_column_comment(table_name, column_name, [:comment]) if .key?(:comment) else super end end |
#create_table(table_name, **options) ⇒ Object
175 176 177 178 179 180 181 |
# File 'lib/active_record/migration/compatibility.rb', line 175 def create_table(table_name, **) if connection.adapter_name == "Mysql2" super(table_name, options: "ENGINE=InnoDB", **) else super end end |