【发布时间】:2017-05-02 11:24:54
【问题描述】:
我正在使用 Django 1.9.8 开发网站,并尝试将其更新版本部署到服务器以进行演示。
由于我在开发此工具时一直在学习 Django,因此在遇到数据库问题时,我犯了几次删除迁移并创建新迁移的错误。当我能够删除现有数据库时,这在我的开发人员上运行良好,但在尝试将其部署在演示服务器上而不丢失现有数据库数据时会导致问题。
演示服务器上没有现有数据库架构的迁移,当我运行manage.py makemigration <myappname> 时,它会为应用程序创建初始迁移。当我尝试运行manage.py migrate <myappname> 时,它告诉我这些表已经存在(因为迁移正在尝试添加所有这些表,而不是对数据库进行需要进行的修改)。
有没有一种方法可以根据当前数据库创建初始迁移,然后我可以运行 makemigrations 来获取将修改当前数据库以与当前模型保持同步的迁移?
抱歉,如果这已经在某个地方得到了回答,我已经看过并且没有运气找到答案。
谢谢!
【问题讨论】:
-
查看 django 文档的这一部分:docs.djangoproject.com/en/1.10/howto/legacy-databases 这可能会对您有所帮助
-
您的代码肯定在版本控制中,但是?您不能只恢复删除迁移的更改吗?
标签: django