У меня в проекте есть форма с доступом к заполнению только для авторизованных пользователей.
Вот примерные поля модели на которой построена форма:
number=models.PositiveSmallIntegerField()
owner = models.ForeignKey(settings.AUTH_USER_MODEL,
on_delete=models.CASCADE)
gogs=models.ForeignKey('dog', on_delete=models.CASCADE, blank=True)
zones=models.ManyToManyField('zoness')
мои представления:
мой views.py:
from .forms import DogFormSet
def dog(request):
formset = DogFormSet (queryset=dog.objects.none())
if request.method == 'POST' and 'speed' in request.POST:
form2 = SpeedsForms(request.POST)
if form2.is_valid():
form2.save()
if request.method == 'POST' and 'dogs' in request.POST:
formset = DogFormSet(request.POST)
if formset.is_valid():
formset.save()
if request.method == 'POST' and 'color' in request.POST:
form4 = ColorForms(request.POST)
if form4.is_valid():
form4.save()
if request.method == 'POST' and 'Req' in request.POST:
form5 = DogRequestsForm(request.POST)
if form5.is_valid():
form5.save()
form2 = SpeedsForms()
form4 = ColorForms()
form5 = DogRequestsForm()
data = {
'form2': form2,
'formset': formset,
'form4': form4,
'form5': form5,
}
return render(request, 'main/dogsform.html', data)
Как автоматически присваивать к "owner" текущего авторизованного пользователя или пользователя который заполняет данную форму?