解决Django迁移没有变化检测不能创建表的问题

  

  

修改了表结构以后执行python3管理。py迁移报错:

        django.db.utils。OperationalError(1091年:“不能放弃“电子邮件”;检查列/键存在”)      

所以进数据库把对应的表删除了,想着重新生成这张表。

  

<>强删除表以后执行:

        python3管理。py makemigrations   python3管理。py迁移      

还是不能生成表,提示:未检测到变化

  

  

首先删除了应用程序对应目录下的数据库对应的文件和缓存文件:

        美元rm射频迁移/__pycache__/      

        美元python3管理。py makemigrations   没有变化检测   ~/代码/django/blogproject python3美元管理。py makemigrations评论   迁移的“评论”:   评论/迁移/0001 _initial.py   ——创建模型评论   ~/代码/django/blogproject python3美元管理。py迁移   执行操作:   应用迁移:管理、身份验证、博客,评论,contenttypes、会话、用户   迁移:   没有迁移应用。      

进入数据库发现仍然没有生成表。

  

然后发现有一张django_migrations表,里面记录这有关创建表的记录,删除对应的数据表:

        删除从django_migrations应用=皔ourappname”;      

<强>重新执行生成数据库命令:

        美元python3管理。py makemigrations评论   检测到任何更改应用程序“评论”   ~/代码/django/blogproject python3美元管理。py迁移的评论   执行操作:   适用于所有迁移:评论   迁移:   应用comments.0001_initial……好      

<强>数据表顺利生成。

  

  

在执行         python3管理。py makemigrations python3管理。py迁移      

操作的时候,不仅会创建0001 _initial.py对应的模型脚本,还会创建一个数据库记录创建的模型。如果想重新生成数据库,需要两个地方都做删除。

  

以上这篇解决Django迁移没有变化检测不能创建表的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

解决Django迁移没有变化检测不能创建表的问题