Django DETAIL: Failing row contains (..., null)



Error - DETAIL: Failing row contains (6,2022 -06-18 09:50:32.722841+00, 2022-06-18 00:00:00+00, NE, something, something, null)。我得到了3个模型:Patient =>Hospitalization&咨询(ForeignKey =病人),对多。我知道那里,on ' null ';点,必须是病人ID,但我不知道如何获得这个ID。

Models.py:

class Patient(models.Model):
NameandLastName = models.CharField(max_length = 50)
...
class Consult(models.Model)
Patient = models.ForeignKey(Patient, on_delete = models.CASCADE)
simptoms = models.CharField(max_length = 50)
option_pay = models.CharField(max_length = 40, choices = pay_method)
...

Views.py

class Consult(LoginRequiredMixin, CreateView):
model = Consult
template_name = 'Manage/ConsultAdd.html'
form_class = forms.FromConsultAdd
def form_valid(self, form):
form.instance.autor = self.request.user
messages.success(self.request, f"smth")
return super().form_valid(form)

我想我必须把史密斯放在视图上,但我不知道是什么。

我认为你唯一缺少的是保存实例,这让Django知道你更新了对象。

把它放进你的form_valid:

def form_valid(self, form):
form.instance.autor = self.request.user
form.instance.save()
messages.success(self.request, f"smth")
return super().form_valid(form)

相关内容

最新更新