背景:-
我正在使用 Django 1.3。我们使用 South 作为数据库迁移和 Git SCM 的模块。
问题:-
处理形成的迁移文件夹的正确方法是什么?
主要问题是我在开发机器中更改了数据库架构,当我将其上传到生产服务器时,我必须迁移现有架构。在这样做的同时,迁移文件总是存在一些问题。
我应该只将 migrations 文件夹添加到 gitignore 吗?或者有更好的方法吗?
最佳答案
您应该将 migrations 文件夹添加到您的版本控制系统,并使用相同的文件进行生产和开发。如果您不是从一开始就引入迁移并且您已经有现有的表,那么您可能会在生产系统上遇到一些问题。
因此您必须伪造第一次迁移,这通常与syncdb
在您第一次创建数据库时所做的相同。
因此,当第一次尝试在生产机器上为您的应用程序应用迁移时,请执行 manage.py migrate app_name 0001 --fake
。这让 South 知道,第一次迁移已经应用(这已经发生在 syncdb 中),当您再次运行 migrate
时,它将继续进行以下迁移。
关于django - 使用 South、Django 和 Git 时处理数据库迁移的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10083130/