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指令。

上一篇:django makemigrations 错误:TypeError: 'module' object is not iterable


下一篇:Volatility Indicator Functions 波动率指标函数