Я хочу, чтобы моя форма сохранила свои выбранные значения после отправки. Вот скриншот:
Это значения по умолчанию, которые отображаются после нажатия кнопки «Отправить».
views.py:
def adddata(request):
if request.user.is_authenticated:
username = request.user.username
print(username + " is on Add Data page")
if request.method == 'POST':
qform = QuestionForm(request.POST)
rform = ResponseForm(request.POST)
if qform.is_valid() and rform.is_valid():
qf = qform.save()
rf = rform.save(commit=False)
rf.Question = qf
rf.save()
messages.success(request, 'Successfully Added')
return HttpResponseRedirect(reverse('adddata'))
else:
qform = QuestionForm()
rform = ResponseForm()
return render(request, 'app/adddata.html', {
"qform": qform,
"rform": rform,
"username": username,
})
forms.py:
class ResponseForm(forms.ModelForm):
class Meta:
model = Response
fields = ('Response', 'Topic', 'Client', 'Planit_location', 'Date_added')
labels = {
'Planit_location': _('Planit Location'),
'Date_added': _('Date Added'),
}
widgets = {
'Response': Textarea(attrs={'rows':3, 'cols':180}),
}
HTML:
<form method="post" name="uploadform" style="margin-left: 16px">
{% csrf_token %}
<h4>Add Data</h4>
<table>
{{ qform.as_table }}
{{ rform.as_table }}
</table>
<button type="submit" class="buttonCopy button1">Submit</button>
</form>
Я не уверен, как делать операторы if в html, когда выпадающий список не создается вручную.