You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何跳过Django的DeleteModel操作?保留数据表且删除模型

Django删除模型但保留数据表的解决办法
  • 生成迁移文件并修改为空操作
    删除模型后,先执行python manage.py makemigrations生成包含DeleteModel操作的迁移文件。打开这个文件,把operations列表清空,改成如下形式:

    from django.db import migrations
    
    class Migration(migrations.Migration):
        dependencies = [
            ('你的应用名', '上一个迁移文件的编号'),
        ]
    
        operations = []
    
  • 执行迁移更新状态
    运行python manage.py migrate,这时候Django会把这个迁移标记为已完成,但不会执行任何数据库操作,数据表会被保留。

  • 后续无重复生成问题
    完成上述操作后,再执行makemigrations时,Django不会再生成针对该已删除模型的删表迁移,因为它的迁移历史已经被记录为处理完毕。

内容的提问来源于stack exchange,提问作者Paul Wanjohi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 13:34:53