Django创建数据库表失败处理方法

手动删除数据库中的 Golden 表后,重新运行 makemigrations 和 migrate 命令时,Django 提示没有需要应用的迁移(No migrations to apply),导致表未重新创建。以下是可能的原因和解决方案:

问题原因

迁移文件未更新

删除数据库表后,Django 的迁移文件仍然认为表已经存在,因此不会重新创建表。

迁移文件冲突

可能存在多个迁移文件,导致 Django 无法正确识别需要应用的迁移。

数据库状态未同步

Django 的 django_migrations 表中仍然记录着已应用的迁移,导致 Django 认为不需要重新创建表。

一、方法

golden为APP名称

删除 golden/migrations/ 目录下的所有文件(保留 init.py)。

重新生成迁移文件:

python manage.py makemigrations golden

应用迁移:

复制

python manage.py migrate golden

如果还不行,就强制迁移

python manage.py migrate golden --fake-initial

相关推荐
清水白石00810 分钟前
《Python × 数据库:用 SQLAlchemy 解锁高效 ORM 编程的艺术》
开发语言·python·json
星依网络18 分钟前
使用LabelImg工具标注数据(游戏辅助脚本开发)
python·游戏引擎·图形渲染·骨骼绑定
站大爷IP18 分钟前
Appium实现Android应用数据爬取:从环境搭建到实战优化
python
2301_8002561128 分钟前
第十一章 PostgreSQL 服务器编程知识点梳理(1)
服务器·数据库·postgresql
松涛和鸣32 分钟前
DAY32 Linux Thread Programming
linux·运维·数据库·算法·list
IT老兵20251 小时前
PyTorch DDP多GPU训练实践问题总结
人工智能·pytorch·python·分布式训练·ddp
秦jh_1 小时前
【Qt】常用控件(上)
服务器·数据库·qt
9527(●—●)1 小时前
windows系统python开发pip命令使用(菜鸟学习)
开发语言·windows·python·学习·pip
爬山算法1 小时前
Netty(14)如何处理Netty中的异常和错误?
java·前端·数据库
꧁坚持很酷꧂1 小时前
把虚拟机Ubuntu中的USB设备名称改为固定名称
linux·数据库·ubuntu