我有3種型號設置如下:的Django模型實例編輯
#models.py
class Room(models.Model):
room_number = models.CharField(max_length=20, primary_key=True, null=False, blank=False)
isolation_status = models.BooleanField()
class Treatment(models.Model):
room_number = models.ForeignKey(Room, primary_key=True)
treated = models.BooleanField()
class Isolation(models.Model):
room_number = models.ForeignKey(Room, primary_key=True)
我需要當我創建一個新的治療目標設定在Room.isolation_status場爲False做什麼。
#views.py
class AddTxView(FormView):
template_name = 'addtx.html'
form_class = TxForm
success_url = '/rooms/addtx/'
def update_iso(self, form):
instance = Room.objects.get(room_number=room_number)
instance.isolation_status = False
def form_valid(self, form):
save_it = form.save(commit=False)
save_it.save()
return super(AddTxView, self).form_valid(form)
#forms.py
class TxForm(forms.ModelForm):
class Meta:
model = Treatment
什麼時候應該調用update_iso函數?在save()之後?我應該使用
您*正在使用基於類的視圖。 –