Как использовать данные из модели в качестве вариантов для другой модели

Я хотел бы, чтобы информация, введенная в одну модель, использовалась как выбор в следующей модели.

#Model 1 will have staff information 
#Example: John - HSE
class staff_information(models.Model):
    Name_of_staff           =models.CharField(max_length=50)
    Designation             =models.CharField(max_length=20)    
    def __str__(self):
         return self.Name_of_staff
#model 2 will contain information collected on a questionaire
#example: Sex (Yes or No)
class form_information(models.Model):
Sex                         =models.CharField(max_length=50)
Name_of_staff               =models.ForeignKey("staff_information",on_delete=models.CASCADE)
supervisor                  =models.ForeignKey("senior",on_delete=models.CASCADE)
    
```
#Model 3 will have staff information 
#Example: Dan
class senior(models.Model):
    Name            =models.CharField(max_length=50)    
    def __str__(self):
         return self.Name
#views
def home(request):
    form    =   form_information()
    if request.method == 'POST':
        
        form = form_information(request.POST)   
        print(request)
        if form.is_valid():
            form.save()
    context = { 
        'form':form
    }
    return render(request, 'form/home.html', context)
<form action="" method="post">
{% csrf_token %}
#form
What is your sex: {{form_information.sex}}
Name of Staff:    {{form_information.name_of_staff}}
Supervisor:       {{checklist_form.supervisor}}
<button type="submit" value="Submit" class="btn btn-primary">Submit</button> 
</form>

Когда я пытаюсь отправить, я получаю следующее IntegrityError at / NOT NULL constraint failed:

Пожалуйста, помогите!!!

Вернуться на верх