【发布时间】:2015-02-19 12:37:59
【问题描述】:
假设我的项目中有 2 个 Django 应用程序:appA、appB。
appA在其models.py中包含如下ModelA:
class ModelA(models.Model):
field1 = models.CharField(max_length=254, null=False, blank=False,)
appB在其model.py中包含如下ModelB:
from appA.models import modelA
class ModelB(models.Model):
field2 = models.CharField(max_length=254, null=False, blank=False,)
model_A = models.ForeignKey(ModelA, related_name="blahblah")
现在我想向 ModelA 添加一个 @property 函数,该函数将返回具有此 ModelA 作为外键的 ModelB 的所有实例:
@property
def matching_model_bs(self):
return ModelB.objects.filter(model_A=self)
但要做到这一点,我必须将 appB.models 导入 appA.models,但这会导致循环导入。 那么如何在不遇到循环导入的情况下实现这一点呢?
【问题讨论】:
标签: python django circular-reference