На данный момент у меня такой код:
class PassTheTask(models.Model): STATUS_CHOICE = ( ('WAIT', u'Ожидает проверки'), ('PASS', u'Сдано успешно'), ('UNPASS', u'Сдано не успешно') ) title = models.ForeignKey(Exercise, verbose_name=u'Задание') text = models.TextField(u'Описание') date = models.DateTimeField(u'Дата сдачи задания', auto_now_add=True) user = models.ForeignKey(User) status = models.CharField(u'Статус', max_length=32, choices=STATUS_CHOICE, default='WAIT')
Есть форма:
class PassForm(ModelForm): class Meta: model = PassTheTask fields = ['title', 'text', 'link']
Есть вьюха:
def passthetask(request): if request.method == 'POST': form = PassForm(request.POST) if form.is_valid(): title = form.cleaned_data['title'] text = form.cleaned_data['text'] link = form.cleaned_data['link'] u = request.user user = u.id form.save() return render(request,'exercise/passed.html') else: form = PassForm(request.POST) form = PassForm() return render(request, 'exercise/pass.html', {'form': form})
При этом после отправки формы ошибка:
null value in column “user_id” violates not-null constraint
DETAIL: Failing row contains (20, ds, ds, 2015-11-22 14:11:17.592087+00, WAIT, 2, null).
Как сохранять в моделе с заданиями пользователя сдавшего задание?