如题,本地开发环境修改 model 时,有些时候会变动好几次,然后就生成了很多 migrations 文件。
但是部署到服务器时,服务器端应该怎么执行变动:
不上传 migrations 文件,直接执行
makemigrations
重新生成 migrations,再运行migrate
上传开发时的 migrations 文件,然后直接执行
migrate
上面两种方法该选哪一种?为什么?
如题,本地开发环境修改 model 时,有些时候会变动好几次,然后就生成了很多 migrations 文件。
但是部署到服务器时,服务器端应该怎么执行变动:
不上传 migrations 文件,直接执行 makemigrations
重新生成 migrations,再运行 migrate
上传开发时的 migrations 文件,然后直接执行 migrate
上面两种方法该选哪一种?为什么?
我目前是不同步到远程库的。
因为开发过程中要频繁的对model进行修改,会生成很多migrations文件,不好控制migrate不出错;
发布程序之前,首先确认是否进行model更新,如果有的话先进行makemigrations然后migrate,由于本地已经测试完成,所以不容易出现一些奇怪的同步问题。
4 回答4.4k 阅读✓ 已解决
1 回答3.1k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.4k 阅读✓ 已解决
1 回答3.9k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
按照官方的说法,应该提交,并且在服务器端应该直接执行
migrate
,无需再次生成。中文翻译: