views.py
from django.shortcuts import render
from django.http import HttpResponseRedirect
from .forms import UploadDocument
from .models import Document
def upload_document(request):
if request.method == 'POST':
form = UploadDocument(request.POST, request.FILES)
if form.is_valid():
# file is saved
instance = Document(passport=request.FILES['passport'])
instance.save()
instance = Document(id_license=request.FILES['id_license'])
instance.save()
instance = Document(User=request.user)
instance.save()
# needs to add instance of User from cache
return HttpResponseRedirect('/success/url/')
else:
form = UploadDocument()
return render(request, 'verification/verificate.html', {'form': form})
forms.py
from django import forms
class UploadDocument(forms.Form):
passport = forms.ImageField()
id_license = forms.ImageField()
models.py
from django.conf import settings
from django.db import models
class Document(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL,
on_delete=models.CASCADE,)
passport = models.ImageField()
id_license = models.ImageField()
Значение исключения: не выполнено ограничение NOT NULL: valid_document.user_id
Я хочу создать форму, которая позволяет загружать документы для проверки.Как прикрепить авторизованного пользователя?