Django DETAIL: Неудачная строка содержит (..., null)
Ошибка - 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&Consults(ForeignKey=Patient), OneToMany. Я знаю, что там, на "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 узнать, что вы обновили объект.
Вставьте это в вашу форму_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)