I think a lot depends on changing the database model. Django can add new columns using syncdb or generate a script for this, but it wonβt remove the columns, and I donβt think it will remove the foreign key constraints from the database even if they are no longer applicable.
Thus, database migration can be best done using scripts and tested on a copy of the production database or some data sets very close to the production data (the same scheme, of course).
source
share