Хранение формы, связанной с внешним ключом, в 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 %}
Как правильно передать ключ и сохранить его в базе данных?