我不小心删除了Django中的migrations文件夹

Rya*_* Oh 7 django

我使用 Django 和 Postgre 作为数据库。所以我完成了所有迁移,但后来我不小心删除了编辑器中的迁移文件夹。因此,我在终端中再次执行了“python manage.py makemigrations”,希望能够找回该文件夹,但它回复“未检测到任何更改”。我该怎么做才能取回文件夹?简单地再次迁移是错误的吗?我尝试创建一个新数据库并重新执行相同的过程,但它仍然显示“未检测到更改”。

我非常感谢你的帮助。:)

Aja*_*ini 14

如果您已删除所有迁移,则必须重置迁移并重新创建。不用担心,您的数据库会安全的。
如果您想在不丢失数据库的情况下修复迁移,请按照以下步骤操作。

首先清除数据库迁移历史记录。

A。转到 python shellpython manage.py shell

b. 类型from django.db.migrations.recorder import MigrationRecorder

C。类型MigrationRecorder.Migration.objects.all().delete()

二、重新创建迁移

新建一个文件夹migrations__init__.py创建一个在文件夹内命名的文件。

运行命令python manage.py makemigrations

应用假迁移,以便您的数据库架构和迁移历史记录同步。

python manage.py migrate --fake


小智 -2

删除migrations文件夹下的所有内容

并输入以下命令

python manage.py makemigrations