Django: Воздержитесь от обновления полей ввода после возникновения ошибки [дубликат]
Я создал форму предварительной регистрации для пользователей, и каждый раз, когда я вводил неправильную капчу, страница обновлялась. Форма имеет несколько полей ввода, и я не хочу, чтобы пользователь снова вводил свою информацию. Как мне сделать так, чтобы она не обновлялась? Вот моя функция предварительной регистрации.
views.py
def preRegistration(request):
form = MyForm(request.POST)
if request.method == 'GET':
random_chars = ''.join(random.choices(string.ascii_uppercase + string.digits, k=8))
refno = f"{random_chars}"
return render(request, 'registration_form.html', {"refno": refno, "form": form})
if request.method == 'POST':
studentId = request.POST.get('studentId')
...
if form.is_valid():
Applicant.objects.create(studentId=studentId,...,refno=refno)
messages.success(request, f'{refno}')
return redirect('/registration/')
else:
messages.error(request, 'Wrong Captcha!')
return redirect('/registration/')
Форма предварительной регистрации.
registration_form.html
<div>Ref no:<input type="text" name="refno" value="{{ refno }}" id="refno" readonly>
<div><input type="text" name="studentId"></div>
...
<div>{{ form.captcha }}</div>