Хранение формы, связанной с внешним ключом, в Django

Моя модель models.py:

class User(AbstractBaseUser,PermissionsMixin):

email = models.EmailField(db_index=True, unique=True, max_length=254)
phone = models.CharField(max_length=20,help_text='Номер телефона')
is_staff = models.BooleanField(default=True) # must needed, otherwise you won't be at
is_active = models.BooleanField(default=True) # must needed, otherwise you won't be «
is_superuser = models.BooleanField(default=False) # this field we inherit from Permis

class Case(models.Model):
CATEGORIES = [
    ('1','1'),('2','2'), 
    ('3','3')
    ]
title = models.CharField(max_length=200,verbose_name='Название')
description = models.TextField(verbose_name='Описание кейса')
date_of_create = models.DateTimeField(auto_now=True)
date_of_edit = models.DateTimeField(auto_now_add=True)
date_of_close = models.DateTimeField()
category = models.CharField(max_length=100,choices=CATEGORIES)
user_id = models.ForeignKey(User,on_delete=models.CASCADE)

Форма forms.py Нужно ли мне добавить user_id или присвоить ему pk?

class AddCaseForm(ModelForm):
class Meta:
    model = Case
    fields = ['title', 'description', 'category', 'date_of_close']

Мой views.py

def createcase(request):
form = AddCaseForm()
error = ''
if request.method == 'POST':
    form = AddCaseForm(request.POST)
    if form.is_valid():
        form.save()
        return redirect('ShowCase')
else:
    error = 'error'

data = {
    'form': form,
    'error': error
}
return render(request,'createcase.html',data)

Страница html createcase.html Форма должна отправлять данные в базу данных

{% extends 'base.html' %}

{% block content %}

<h1>Форма создания кейса</h1>
<form method="post">
  {% csrf_token %}
  {{ form.title }} <br>
  {{ form.description }} <br>
  {{ form.category }} <br>
  {{ form.date_of_close }} <br>
    <span>{{error}}</span>
    <button type="submit">Add</button>
</form>

{% endblock %}

Как правильно передать ключ и сохранить его в базе данных?

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