2016-03-08 84 views
2

我一直在Django的一个合同项目上工作,并且为活动服务器执行了一些更新,包括从南到最新的Django版本的更新。Django - 迁移混合起来?

我试图按照说明中的说明删除所有旧的迁移文件,除了init,然后使用makemigrations和“python manage.py migrate --fake-initial”。

但事实证明,数据库权限是棘手的。我无法应用更新。

服务器所有者(谁是过去的承包商)还没有意识到存在权限问题,并尝试自行更新。

服务器正在工作,但他向我表示他“必须对迁移工作做许多更改,因为没有旧的迁移”。

我假设他不知道从南方升级到与Django进行集成迁移的正确方法,并且手动完成了所有操作,而不是让Django迁移执行工作

现在我准备好了将来的更新,但我查看了migrations文件夹,它看起来像旧的迁移文件以及新的迁移文件都在那里?例如:http://screencast.com/t/gYQdc1tl4(注意日期)。

一切似乎都在工作,但我想知道...我应该如何去从这里的未来迁移?定期makemigrations/migrate工作吗?或者我应该再次做 - 起初的?

有什么建议吗?由于我们偏离了文档,我不确定下一步该怎么做。

感谢

+0

我的回答有帮助吗?如果愿意,请接受。 – ilse2005

回答

2

如果一切正常,现在你不需要迁移您的开发服务器,那么我只想删除所有旧的迁移(做一个备份!),并以“新移民”使用--fake-initial

启动
+0

工作很好,谢谢!另外一个问题是...当我从开发服务器部署到实时服务器时。如果我迁移了开发服务器,然后通过迁移的数据库与文件一起复制,是否会有任何问题?或者,如果我在实时服务器上运行迁移,它只能正常工作?唯一的问题是确保数据库是最新的? –