Django 南方迁移整个数据库

Django 南方迁移整个数据库,django,django-south,Django,Django South,如何一步迁移Entry db?south的startmigration命令只能用于单个应用程序即使使用原始SQL,您也无法在一个步骤中迁移整个数据库,因为您需要对每个表进行查询。但是,您可以为所有应用创建迁移,然后一次运行所有应用。这是最接近一步迁移的方法。如果您想创建一个迁移,manage.py startmigration已被弃用(请参见manage.py help startmigration),您应该使用manage.py schemamigration(如中所述),你肯定应该在每个应用

如何一步迁移Entry db?south的startmigration命令只能用于单个应用程序

即使使用原始SQL,您也无法在一个步骤中迁移整个数据库,因为您需要对每个表进行查询。但是,您可以为所有应用创建迁移,然后一次运行所有应用。这是最接近一步迁移的方法。

如果您想创建一个迁移,
manage.py startmigration
已被弃用(请参见
manage.py help startmigration
),您应该使用
manage.py schemamigration
(如中所述),你肯定应该在每个应用程序上单独执行此操作

如果您想运行迁移(换言之,实际更改数据库,我猜是这样),那么执行该操作的命令是
manage.py migrate
,如果在没有任何参数的情况下运行该命令,则会将您的所有应用迁移到可用的最新迁移


我的部署脚本只有
manage.py migrate
,无论有多少应用程序需要运行新的迁移,它都可以在无需手动干预的情况下正常工作。

这就是问题所在。如果我不知道最终会有多少应用程序,那么如何实现此过程的自动化?应用程序应该反映在数据库中,反之亦然。因此,如果您了解您的数据库,您就应该了解您的应用程序。在内部,这不是一个步骤,因为在幕后,正在运行多个迁移,并且正在执行多个SQL语句。但是,只有一个命令只需要键入一次,因此从执行该命令的人员的角度来看,这只是一个步骤。