Django OneToOne Field的默认关系

时间:2015-09-01 16:54:19

标签: python django

我正在尝试用一对一的关系创建几个django模型。但是我试图得到它,所以自动创建相关的一对一模型。如果我有这样简单的事情:

class MyObject(models.Model):
    data = models.OneToOneField('MyData', related_name='my_object')

class MyData(models.Model):
    info = models.TextField(null=True)

如果我创建一个MyObject并访问MyObject.data,它将返回None。我希望有一种方法可以让它返回一个MyData对象(只是默认引用)。

我希望MyObject自动拥有一个相关的MyData对象。有没有办法让我这样做或者我是否需要每次检查是否有相关的MyData对象?

1 个答案:

答案 0 :(得分:1)

你见过官方doc吗?

d = MyData(info='whatever')
o = MyObject(data=d)

如果必须填写信息文本字段,它怎么能自动生成?

看到您的修改后


您可以将我的数据设置为空

o = MyObject(data=Mydata(info=None))

当然,你的Mydata现在应该能够接受None作为他们的类型。