假设我有一个简单的 OneToOneField 设置:
class MyRelatedModel(models.Model):
pass
class MyModel(models.Model):
my_field = OneToOneField(MyRelatedModel, blank=True, null=True)
>>> my_related_instance = MyRelatedModel()
>>> my_related_instance.save()
>>> my_model_instance = MyModel(my_field=my_related_instance)
>>> my_model_instance.save()
这意味着我可以my_related_instance
通过my_model_instance.my_field
. 但是,我想打破这种关联:
>>> my_model_instance.my_field = None
AttributeError: 'NoneType' object has no attribute 'myrelatedmodel_id'
>>> setattr(my_model_instance, 'my_field', None)
AttributeError: 'NoneType' object has no attribute 'myrelatedmodel_id'
我知道我可以删除关联的my_related_instance
,但在这种情况下我只想打破关联。如您所见,两者blank
和null
都设置为True
。
如何设置OneToOneField
为空/空白/空?
作为参考,我使用的是 django 1.4。