Write Reversible Migration To Set Default
You can use the change_column_default method to alter the default value of a column. If the column doesn't have a default, then you'd essentially be changing the default from nil to some value.
def up
change_column_default :books, :published, false
end
def down
change_column_default :books, :published, nil
endThis is fine, but you can write the migration as a single, reversible change method using the :from and :to options.
def change
change_column_default :books, :published, from: nil, to: false
endWhen you migrate, the default will be set to false. When you rollback, the default will be removed.
Last updated
Was this helpful?