当我们创建数据库,然后进行数据迁移时,发现表错误,我们删除了数据库中的表,同时又删除了migrations中的迁移文件,这时候我们进行迁移会报错:No migrations to apply。解决措施如下:
Migrations for 'app98':
app98\migrations\0001_initial.py
- Create model Course
再执行python manage.py migrate 就会报错
Operations to perform:
Apply all migrations: admin, app98, auth, contenttypes, sessions
Running migrations:
No migrations to apply.
其实当我们迁移文件时,一共会生成三方文件,迁移文件、数据库中的表以及迁移信息的记录,打开数据库,找到如下表中的django_migrations表:

图片.png
我们生成了一条 迁移的记录,所以数据库会以为我们已经迁移完成,不会在进行迁移操作。
所以我们只需要删除这条记录即可:
再次执行 python manage.py migrate
Running migrations:
Applying app98.0001_initial... OK
这时,我们就会迁移成功了。
记住:迁移文件、数据库中的表以及迁移信息的记录这三方删除的时候缺一不可,缺少任何一方都会报错。