Tou*_*ami 3 migration django database-migration
我有名为“ app1”的django应用,其中包含模型和迁移文件。我将此应用程序重命名为“ app2”,并修复了所有导入,URL ...但是我在迁移表中的文件和数据时遇到问题。如何以正确的方式编写迁移,以确保:-新安装=>创建新表-更新旧版本=>创建新表,移动数据,删除旧表
PS:有很多FK的几张桌子。
这是我的进度,我不确定自己是否处于良好状态:-删除了所有旧的迁移-makemigrations以生成新的迁移文件
经过这两个步骤,我可以安装我的应用程序,但是旧版本仍然有问题。
问题:迁移数据的最佳方法是什么?
PS:我不使用南方。
我找到了可行的解决方案
1-使用新的FK和新的应用程序依赖性修复旧的迁移
2-强制旧迁移使用旧应用名称创建表,因此对于该inn迁移。CreateModel.options,添加'db_table:'app1_table_name'
3-在每个迁移文件中添加替换= [('app1','migration_file_name')]。这将告诉django当前迁移(app2.migration_file_name)将替换旧文件,这将防止django执行两次迁移
4-使用migrations.AlterModelTable创建重命名表的迁移文件