OneToOneField从两边都是空的

时间:2013-04-17 07:46:49

标签: python django models

有没有办法创建OneToOneField,两边都可以为空?

我的意思是如果我在ModelAModelB之间存在这种关系,我想允许ModelA没有ModelB关系,ModelB不有ModelA关系。

在我的例子中有这段代码:

class Forum(models.Model):
.....

class Jobs(models.Model):
forum = models.OneToOneField(Forum, blank = True, null = True)

。这在Jobs -> Forum方向上非常有效,但是当我从Forum -> Jobs方向尝试时,肯定会出现query does not exist错误。

作为一种解决方法,我可以使用ManyToManyFieldhasattr进行检查,但我会对OneToOneField解决方案感兴趣。

感谢。

1 个答案:

答案 0 :(得分:1)

您应该为反向关系创建一个访问方法。

看看Django的User模型如何用get_profile实现这一点。