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

相关推荐
星期天要睡觉11 分钟前
mysql常用命令
数据库·mysql·oracle
南极浮冰22 分钟前
【无标题】
linux·人工智能·python
杰克尼25 分钟前
Java基础-stream流的使用
java·windows·python
就是有点傻26 分钟前
如何使用EF框架操作Sqlite
数据库·sqlite
zuozewei28 分钟前
随笔之 ClickHouse 列式分析数据库安装注意事项及基准测试
数据库·clickhouse
外星喵36 分钟前
Redis与本地缓存的协同使用及多级缓存策略
数据库·redis·缓存
猪蹄手1 小时前
MySQL详解(一)
数据库·mysql
半部论语2 小时前
Spring **${}** vs **#{}** 语法全景图
java·数据库·spring boot·后端·spring
啥都学点的程序员2 小时前
python实现的websocket日志类
后端·python
ZeroNews内网穿透2 小时前
ZeroNews内网穿透安全策略深度解析:构建企业级安全连接体系
java·运维·服务器·网络·python·安全·php