我克隆了一个postgres
分贝,并为其中一个应用程序添加了一个新模型。我们的项目包含很多应用Django迁移为一个克隆分区
现在当我运行migrations
时,migrate
它会失败。所以我评论说,模型出来了,从文件夹中删除了migrations.py文件并且运行了伪造的迁移。再次将该模型放入并运行migrations
,migrate
。事情很好。
但是现在我手动从db中删除了这个模型表,并且在运行迁移时它将显示模型不存在。
基本上我需要一次又一次地调整模型,删除,更新表。 所以我搜索了从头开始迁移。从django_migrations
表中删除了一些应用程序。但它没有解决它显示已经存在的关系。
这一切都变得扑朔迷离,--fake
,delete
,squash
该怎么办?
基本上,如果我删除表django_migrations,从应用程序删除migrations文件夹。不能django自动同步数据库,并了解什么样的模式存在和不存在,并找出它本身。
重做克隆。无需执行其他任何操作,请运行迁移。你碰到什么错误?这对了解至关重要。只是试图解决它,让你陷入更多麻烦,正如你发现的那样。 – Melvyn
无论如何没有再次克隆,这将意味着一次又一次的克隆。此外它需要管理员权限,邮件链等。 – garg10may
不,它不。关键问题是要确定您的代码库是否与您的克隆一致。请注意,我说“运行迁移”,而不是“运行makemigrations,然后运行迁移”。只迁移。这确保您的代码库和克隆同步。也不完全确定你的最终目标是什么?为什么要手动从数据库中删除表格? – Melvyn