Я пишу тестовый пример, в котором после входа пользователь перенаправляет на форму, которая вызывается промежуточным программным обеспечением и показывается пользователю.Поэтому теперь пользователь должен отправить форму, после которой при отправке пользователь перенаправляет на обычную страницу.
middleware.py
def process_view(self, request, view_func, *view_args, **view_kwargs):
if condition:
...
...
return redirect('%s?next=%s' % (reverse('form'), request.path))
else:
return None
form.html
<form action="{% url 'form'%}" method="post">
<div>
<input type="radio" id="yes" name="is_accepted" value="yes" onchange="activateButton(e)" checked>
<label for="input1" >Yes</label>
<br>
<input type="radio" id="no" name="is_accepted" value="no" onchange="activateButton(e)">
<label for="input2">No</label>
<input type="hidden" id="next" name="next" value="{{ next }}">
<button type="submit" name="submit" id="submit">Submit</button>
</div>
</form>
Как толькопосле отправки данных формы промежуточное программное обеспечение должно выйти и вернуться на обычную или следующую страницу.Он работает нормально в браузере, но во время тестирования отображается форма, но данные не сохраняются при отправке запроса.
response = client.post(form_url, {'is_accepted': 'yes'}, follow=True)
После отправки запроса по-прежнему содержимое ответа остается содержимым формы.