django清理migration终极解决办法
首页 > python > Django   作者:littleQ  2017年9月14日 9:47 星期四  热度:11360°  字号:   评论:0 条
时间:2017-9-14 9:47   热度:11360°  评论:0 条 

1、django生成数据表结构的过程

       在我们设计好models以后,我们可以通过以下命令生成将要同步给数据库的数据结构文件

       python manage.py makemigrations

       生成的文件在app目录下的migrations文件夹内以000*开头的文件。

       每运行一次makemigrations,django就会根据models的变更在migrations文件夹内生成一个新文件。

       然后我们运行python manage.py migrate,django就会根据migrations文件夹内生成一个文件,将数据结构写入数据库。

       那么是不是每一次都重复执行所有的migrations内的文件呢?当然不是,每次执行migrate的时候,django会在django_migrations数据表内记录已经执行了的migrations文件。去数据库里查询该表就能看到对应APP里执行了的migrations。


2、django 请理了数据库里的表后,如何重新建表呢?

       我们了解了django去数据库内生成表结构的过程后,那么如何清理就很简单了。

       第一步,我们需要清理migrations文件夹内除了__init__.py这个文件外的所有文件。(当然部分清理的时候我们也可以考虑直接修改这个文件。)

       第二步,我们需要清理数据库内django_migrations对应app下的migrations记录。

       清理完以后我们再重新做

        python manage.py makemigrations   和   python manage.py migrate

       就可以重新生成表结构文件了。


3、Django 清理migrations无障碍版

       清理migrations需要清理两个标记。

       a、将app内migrations文件夹里了__init__.py这个文件外的所有文件删除。

       b、登录数据库,找到django_migrations这个表,然后将表内对应的应用app下的migrations记录删除即可。


 您阅读这篇文章共花了: 
捐赠支持:如果觉得这篇文章对您有帮助,请“扫一扫”鼓励作者!
二维码加载中...
本文作者:littleQ      文章标题: django清理migration终极解决办法
本文地址:http://www.hylinux.cn/python_django/87.html
版权声明:若无注明,本文皆为“浮华”原创,转载请保留文章出处。

返回顶部    首页    手气不错    手机版本    About Me    私人小窝   
版权所有:浮华    站长: littleQ   粤ICP备15005816