sza*_*man 5 python django django-models django-south
我按顺序有两个班:
class A(models):
...
class B(models):
a = models.ManyToManyField(A)
Run Code Online (Sandbox Code Playgroud)
现在我必须将我的模型改为以下一个:
class A(models):
b = models.ManyToManyField(B)
class B(models):
...
Run Code Online (Sandbox Code Playgroud)
我必须使用南迁移.我想在A类中创建新的多对多字段,从B类迁移数据和删除字段.问题是两者都在同一个模型中.因此,当我将多对多的东西放入A类时,它是无法看到的.因为B声明低于A.如何解决这个问题?
至少SQLAlchemy允许您使用字符串而不是类.尝试django-orm也允许这样做.
a = models.ManyToManyField('A')
# ...
b = models.ManyToManyField('B')
Run Code Online (Sandbox Code Playgroud)
更新:根据Django/Python循环模型参考,这正是要走的路.