Я создал Form.ModelChoiceField, который содержит элементы в моей базе данных, но он показывает все данные пользователей. Я только хочу показать данные подключенного пользователя! Спасибо за помощь.
PS: мне не нужно создавать модели. Форма, потому что я не хочу редактировать или обновлять данные.
views.py
def sms(request):
form2 = ListDataForm()
if request.method == 'POST':
form2 = ListDataForm(request.POST)
if form2.is_valid():
message = form2.cleaned_data["message"]
print(message)
else:
form2 = ListDataForm(request=request)
return render(request, "data_list/sms.html", {"form2": form2})
models.py
class List(models.Model):
item = models.CharField(max_length=100)
content = models.TextField()
site = models.CharField(max_length=11, choices=THE_SITE)
content_list = models.TextField()
author = models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self):
return self.item
forms.py
class ListDataForm(forms.Form):
message = forms.CharField(widget=forms.Textarea)
listdata = forms.ModelChoiceField(queryset=List.objects.all())
Вместо forms.ModelChoiceField(queryset=List.objects.all())
я написал forms.ModelChoiceField(queryset=List.objects.filter(author=request.user))
, но это не работает.