我有以下情況:OneToOneField與ForeignKey的
class Professor(models.Model):
default_address = models.OneToOneField('Address')
class Address(models.Model):
name = models.CharField()
street_address = models.CharField()
# ...
professor = models.ForeignKey("Professor", related_name="addresses")
基本上,一個Professor
可以有許多與其相關的Address
ES,但只有一個default_address
選擇。然而,事情並沒有工作權當我保存的東西與我的看法,事情並沒有得到相關的恰到好處:
form = forms.ProfileEditForm(request.POST)
if form.is_valid():
address = professor.default_address or models.Address()
address.name = "Default" if address.name == None else address.name
address.street_address = form.cleaned_data['street_address']
address.street_address_2 = form.cleaned_data['street_address_2']
# ...
address.save()
professor.default_addresss = address
professor.save()
後,我保存它,professor.default_address
是None
。我在這裏做錯了什麼?