I quite like Rails' database migration management system. It is not 100% perfect, but it does the trick. Django does not ship with such a database migration system (yet?) but there are a number of open source projects to do just that, such as django-evolution and south for example.
So I am wondering, what database migration management solution for django do you prefer? (one option per answer please)
If you are using SQLAlchemy as your ORM then the de facto standard is Alembic.
Another alternative that haven't been mentioned is yoyo-migrations.
Just to note that since 2009, pretty much every project mentioned here other than South is dead. South is the de facto standard, for better or worse.
I like django-evolution:
pros:
cons:
I've been using simple-db-migrate
Pros:
Cons:
I've been using South, but Migratory looks promising as well.
We use Django at work, and we've been using dmigrations. While it has its quirks, it's been useful so far. Some features:
manage.py
as a command.One problem is that it only currently supports MySQL. However, one of our guys make a local hack to it to support PostgreSQL, which we use. As I recall, the hack wasn't all that extensive, so it shouldn't be terribly difficult to hack it up to support other RDBMSs.