Python 新DB上的南迁
我知道问题所在,但这毫无意义,因为我以为南方会解决这个问题。 我正在尝试安装一个新的暂存服务器,因此需要一个新的DB,但我遇到了南迁移错误 我有两个应用程序,Python 新DB上的南迁,python,django,django-south,Python,Django,Django South,我知道问题所在,但这毫无意义,因为我以为南方会解决这个问题。 我正在尝试安装一个新的暂存服务器,因此需要一个新的DB,但我遇到了南迁移错误 我有两个应用程序,bar和foo,下面是模型。 在0001\u Foo\u初始迁移中,我有一个依赖于Bar的Foo。但是后来我删除了Bar和依赖项,因为我不需要它们 #in foo.models class Foo(models.Model) #bar = models.ForeignKey(Bar...) #dependency removed i
bar
和foo
,下面是模型。
在0001\u Foo\u初始迁移中,我有一个依赖于Bar的Foo。但是后来我删除了Bar
和依赖项,因为我不需要它们
#in foo.models
class Foo(models.Model)
#bar = models.ForeignKey(Bar...) #dependency removed in foo 2nd migration
foo_name..
"""bar.models - removed in bar 2nd migration
class Bar(models.Model)
bar_name...
"""
#bar
0001_bar_initial.py - had Bar model
0002_bar_model_Bar_deleted.py - removed Bar model
#foo
0001_foo_initial.py - foo with bar dependency
0002_foo_foreign_key_bar_deleted.py - remove dependency
因此,当我运行migrate--all
时,我得到的关系在0001\u foo\u initial.py
中不存在,因为它试图添加依赖项。
它似乎首先运行了条
迁移,删除了条
。然后它尝试运行0001\u foo\u initial
,但由于Bar
已被删除,因此会抛出错误
我该如何着手修复这个错误,还是我遗漏了什么。我可以删除具有依赖项的行[例如,删除0001_foo_initial.py中的依赖项],但随后我必须为此进行lotta house维护,例如,我必须删除删除的文件0002_foo_foreign_key_bar\u deleted
,因为没有该文件。不要在新的数据库服务器上运行迁移。相反,运行syncdb
,并通过migrate--fake
伪造现有迁移
syncdb
将在数据库中创建当前模型结构。假装迁移是说不需要应用迁移的必要条件
希望我已经解释清楚了