数据库
首页 > 数据库> > django删除数据库表,重新makemigrations与migrate数据库不能再生成表的问题

django删除数据库表,重新makemigrations与migrate数据库不能再生成表的问题

作者:互联网

今天在数据库没有备份的情况下,删除了django某个app的表。于是在控制台下重新输入数据迁移的命令:

python manage.py makemigrations
python manage.py migrate

结果都显示:

No changes detected
NO migrations to apply

打开django目录下的app目录中的migrations文件夹,发现除了__init__.py还有其他几个数据迁移的记录文件,表明数据迁移过,但是进行迁移无法重新生成表。

解决办法:在数据库管理中找到django_migrations的表,这里存放着所有app迁移的记录,找到对应app的记录,选中全部删除,然后再在控制台进行指令:python manage.py migrate,之后就会发现数据表重新生成了。

如果app目录中的migrations文件夹中,除了__init__.py文件,没有为他文件,则执行了makemigrations指令再执行migrate指令。

标签:makemigrations,migrate,数据库,py,migrations,django,迁移,app
来源: https://blog.csdn.net/weixin_43314640/article/details/116297781