如何处理南(django)的重构?

时间:2013-02-22 14:19:14

标签: python database django migration django-south

我已经安装了南部并进行了一些迁移。现在文件夹应用程序中有一个“迁移”目录。我的问题是:当我重构模型时,迁移目录文件中的哪些条目我必须应用更改?我认为一些条目直接与数据库模式相关,而其他条目与代码本身相关。我无法在南方文件中找到答案。

1 个答案:

答案 0 :(得分:0)

对模型进行更改,然后运行python manage.py schemamigration yourapp --auto。这将为您创建迁移(每次执行此过程时,您将在迁移目录中看到一个新文件)。

有时您确实需要手动编辑迁移,但您应该尝试避免迁移。特别是如果您已经运行了迁移(南方应用程序会记录已运行的迁移,因此它知道数据库的状态)。

South旨在支持在不同版本的代码之间移动而不会破坏您的数据库。迁移目录中的每个迁移文件都代表代码的快照(特别是models.py的快照)。您可以通过运行python manage.py migrate yourapp version_no

从版本迁移到版本