我很喜欢 Rails 的数据库迁移管理系统。它不是 100% 完美的,但它可以解决问题。Django 没有提供这样的数据库迁移系统(还没有?),但是有许多开源项目可以做到这一点,例如 django-evolution 和 south。
所以我想知道,您更喜欢哪种 django 数据库迁移管理解决方案?(请每个答案选择一个)
我很喜欢 Rails 的数据库迁移管理系统。它不是 100% 完美的,但它可以解决问题。Django 没有提供这样的数据库迁移系统(还没有?),但是有许多开源项目可以做到这一点,例如 django-evolution 和 south。
所以我想知道,您更喜欢哪种 django 数据库迁移管理解决方案?(请每个答案选择一个)
迁移看起来又好又简单。
如果您使用SQLAlchemy作为 ORM,那么事实上的标准是Alembic。
另一个没有提到的选择是yoyo-migrations。
我们在工作中使用 Django,并且一直在使用dmigrations。虽然它有其怪癖,但到目前为止它一直很有用。一些特点:
manage.py
为命令。一个问题是它目前只支持 MySQL。但是,我们的一个人对其进行了本地破解以支持我们使用的 PostgreSQL。我记得,hack 并没有那么广泛,所以破解它以支持其他 RDBMS 应该不难。
除了 South、dmigrations、django-evolution 和 Migratory,我想我会添加simplemigrations作为我见过的另一个自动化 Django 迁移的工具。
我过去使用过其中的三个,但现在手动迁移。由于添加了最新功能,我正在考虑再次尝试 South。
请注意,自 2009 年以来,除了 South 之外,这里提到的几乎所有项目都已死亡。南方是事实上的标准,无论好坏。
我一直在使用simple-db-migrate
优点:
缺点: