【发布时间】:2015-11-11 12:44:02
【问题描述】:
我正在使用 Django 开发 Web 系统,它们部署在 Heroku 上。系统投入生产后,必须保留所有数据库数据和迁移文件(即 00*_* 文件)。以下是我执行数据库迁移和部署的过程:
对于第一次部署,在本地执行
manage.py makemigrations并推送到Heroku。在 Heroku 上执行
manage.py migrate。
如果稍后更改模型:
在本地执行
makemigrations并推送到 Heroku。在 Heroku 上执行
migrate。
如果模型发生变化,则重复第 3 步和第 4 步。
随着系统的发展,迁移文件越来越多。我想知道:成功迁移和部署后,我可以删除所有迁移文件并像一个新文件一样开始吗?那就是:
对于第一次部署,在本地执行
makemigration并推送到Heroku。在 Heroku 上执行
migrate。删除所有本地迁移文件。
在本地执行
makemigrations以创建看似启动的迁移文件。
改变模型:
在本地执行
makemigration并推送到 Heroku。在 Heroku 上执行
migrate。
如果模型发生变化,则重复第 3 步到第 6 步。
上述程序正确吗?
【问题讨论】:
标签: heroku deployment migration django-south