我有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()之后?我应该使用
您*正在使用基于类的视图。 –