Chi*_*and 9 python django database-migration django-1.7
我不小心在Django 1.7项目中丢了一张桌子.我跑了makemigrations&migrate.两个命令都没有识别出表已丢失.所以他们没有任何影响.
我应该删除模型的代码,进行迁移,添加模型的代码并再次迁移吗?还是有更好的方法来恢复它?
Sim*_*mon 18
试试这个:
python manage.py sqlmigrate app_name 0001 | python manage.py dbshell
Run Code Online (Sandbox Code Playgroud)
它将初始应用程序迁移的输出传递给dbshell,后者执行它.如果您想要更好地控制正在发生的事情,请分两步拆分它并复制/粘贴SQL命令.
当然,迁移包含所有应用程序表的单个事务,因此如果只有一个表缺失(来自多模型应用程序),则必须手动选择要重新创建的表.