我正在尝试使用factory_boy为具有循环依赖关系factory_boy: circular dependencies的应用创建django应用的灯具。
模型:
from django.db import models
class A(models.Model):
b = models.ForeignKey(B)
class B(models.Model):
c = models.ForeignKey(C)
class C(models.Model):
a = models.ForeignKey(A, null=False)
工厂:
# in AFactory
b = SubFactory(BFactory)
# in BFactory
c = SubFactory(CFactory)
# in CFactory
a = CircularSubFactory('a_factory', 'AFactory', b__c__a=None)
使用这些工厂运行factory_boy脚本时,我遇到ValueError: Cannot assign None: "C.a" does not allow null values
错误,这是正常的,因为C.a
设置了null=False
。
是否可以加载C
,更改C.a
以设置null=True
,然后运行我的factory_boy脚本?
几点: