我一直在使用 Django 进行契约(Contract)项目,我对实时服务器执行了一些更新,包括从 South 到最新 Django 版本的更新。
我试图按照文档中的说明进行操作,其中声明删除除 init 之外的所有旧迁移文件,然后使用 makemigrations 和“python manage.py migrate --fake-initial” .
但事实证明数据库权限很奇怪。我无法应用更新。
服务器所有者(过去的承包商)尚未意识到存在权限问题,并自行尝试更新。
服务器现在可以正常工作,但他对我说他“必须对工作中的迁移做很多更改,因为没有旧的迁移”。
我假设他不知道从 South 升级到使用 Django 集成迁移的正确方法,并且全部手动完成,而不是让 Django 迁移完成工作。
好吧,现在我已准备好迎接 future 的更新,但我查看了迁移文件夹,它看起来像旧的迁移文件和新的迁移文件都在那里?一个例子:http://screencast.com/t/gYQdc1tl4 (注意日期)。
一切似乎都在工作,但我想知道......我应该如何从这里进行 future 的迁移?常规的 makemigrations/migrate 会起作用吗?或者我应该再次执行 --fake-initial 吗?
有什么建议吗?由于我们偏离了文档,所以我不确定下一步该怎么做。
谢谢
请您参考如下方法:
如果现在一切正常并且您不需要开发服务器的迁移,那么我将删除所有旧迁移(做一个备份!)并使用 --fake-initial 从“新迁移”开始
