migration文件生产的过程: 在执行命令python manage.py makemigrations的时候,会在app的migrations下,生成以000开头的py文件,里面记录着model表结构和你对models的操作记录operations等,以类的形式
migration文件生产的过程:
在执行命令python manage.py makemigrations的时候,会在app的migrations下,生成以000开头的py文件,里面记录着model表结构和你对models的操作记录operations等,以类的形式存在
再次执行,python manage.py migrate命令,才会同步到数据库中,并且会在数据库的django_migrations记录。
清理数据表后,如何重新建立表?
数据库表被清理后,再次执行
python manage.py makemigrations
python manage.py migrate
会提示,一下错误:
pymysql.err.ProgrammingError: (1146, "Table 'xxxx' doesn't exist")数据库中对应的xxxx表没有了,但是django_migrations表和migrations下的000*文件记录还在,需要先清理这两处:
1、清理migrations下的文件中相关表的数据
2、再清理django_migrations中的记录
3、然后再次执行,重新提交model中的模型类,来创建表
python manage.py makemigrations
python manage.py migrate