所以我做了一些改变我的模型中的主键,django不喜欢那样。我做了一些有关原因的解读,并提出了一个复杂的解决方案,包括创建中间表,然后将所有数据推送到最终版本,并使用新的主键。
我想'嘿,我只是在那里有垃圾测试数据,生病只是丢弃我想要更改的表,删除所有迁移历史记录,然后重新迁移它们......'
我试过了,现在Django正在运行初始迁移并将其放入迁移文件夹中,但是当我实际运行时
python manage.py migrate
我得到了这个输出:
Operations to perform:
Synchronize unmigrated apps: staticfiles, messages
Apply all migrations: sessions, admin, study, auth, quiz, contenttypes, main
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
No migrations to apply.
我的数据库仍然缺少我想要重新创建的表。我在这里错过了什么吗?它应该在我的数据库中重新创建它们,对吧?我该如何做到这一点?
答案 0 :(得分:2)
问题在于,在数据库中,有一个名为django_migrations
的表,用于记录应用的迁移。我相信eykanal在评论中指的是什么。一旦我从我的应用程序中删除了相应的行和剩余的表,它就会创建所有新的表。