Django 迁移后“没有要应用的迁移”

mr.*_*r.m 4 python sqlite django

我制作了一个名为“contact”的新应用程序,并将其添加到installed_apps中,但我无法在SQLite数据库中创建表!

Django 版本 = 3.1

python manage.py makemigrations contact

应用程序“联系人”中未检测到任何变化

那么对于:python manage.py migrate contact

要执行的操作:应用所有迁移:(无)正在运行的迁移:没有要应用的迁移。

我已经尝试了这里成员提出的许多解决方案,但没有一个有效

就像检查迁移文件夹中是否存在“init”文件并且它是空的或类似以下的命令:

python manage.py migrate --fake contact zero
Run Code Online (Sandbox Code Playgroud)

要执行的操作:取消应用所有迁移:联系正在运行的迁移:没有要应用的迁移。

python manage.py migrate contact --fake-initial
Run Code Online (Sandbox Code Playgroud)

要执行的操作:应用所有迁移:(无)正在运行的迁移:没有要应用的迁移。

mr.*_*r.m 14

这对我有用;

python manage.py makemigrations --empty yourappname

python manage.py migrate yourappname
Run Code Online (Sandbox Code Playgroud)

事实证明,添加额外的空迁移会迫使 django 重新检查表,在此过程中,它注意到了新的迁移。某处可能发生了一些缓存。

原答案