|
|
1
2
迁移应该始终在部署开始时运行,否则会遇到其他问题。解决此问题的方法是将更改拆分为两个部署。
在部署1中,该字段需要为空(或者
在部署2中,将字段设置为不可为空,对此进行迁移,并删除为处理字段值为
为了安全地删除字段,还需要使用两种部署技术,尽管看起来有点不同在第一个部署中,您将从模型文件中删除该字段,并从代码中删除对该字段的所有引用,但是 不 部署默认迁移以删除字段相反,部署1有一个将字段设置为可空的自定义迁移。然后,在部署2中,部署迁移以实际从数据库中删除字段。 |
|
|
2
1
你可以从一个
如果旧的生产代码在步骤5和6之间写入表,则空值为
*注意,这些方法只在Postgres中测试过。 |
|
3
-1
通常,django升级过程如下所示: 当地发展环境:
在生产服务器上:
|
|
|
Maverik Minett · Django数据迁移顺序 8 年前 |
|
|
Ilya Bibik · 迁移应用程序中的URL。。。没有迁移类 9 年前 |
|
|
Sajuuk · Django的迁移是什么? 9 年前 |
|
|
Jim · 修复“列已存在”Django迁移错误? 9 年前 |
|
|
Doug Harris · 如何压制最近的Django迁移? 10 年前 |