Django ERR_CACHE_MISS на странице входа после нажатия ссылки и обратно
У меня есть страница входа в систему с формой с полями для имени пользователя и пароля и кнопкой отправки. На этой же странице есть ссылки на другие страницы сайта.
Я использую ванильное представление входа в систему Django. Пользователь может войти в систему, используя правильные учетные данные, в противном случае в форме входа будет отображаться ожидаемая ошибка аутентификации. Пока все работает нормально. Проблема, с которой я столкнулся, воспроизводится следующим образом:
- перейдите на страницу входа и введите неправильные учетные данные, отправьте
- правильно отображаются ошибки валидации в форме
- нажмите ссылку на странице
- правильно браузер переводит меня на другую страницу после
GET
запрос - нажмите в браузере кнопку возврата
Или по-другому:
- перейдите на страницу входа и введите неправильные учетные данные, отправьте
- правильно отображаются ошибки валидации в форме
- нажмите в браузере кнопку возврата
- нажмите кнопку браузера вперед
В этот момент я получаю это сообщение от браузера:
Подтвердить повторную отправку формы
Для правильного отображения этой веб-страницы требуются данные, которые вы ввели ранее. Вы можете отправить эти данные еще раз, но, сделав это, вы повторите любое действие, которое эта страница ранее выполняла. Нажмите кнопку перезагрузки, чтобы повторно отправить данные, необходимые для загрузки страницы. ERR_CACHE_MISS
Это странно, но еще более странно то, что если я проверю " Отключить кеш" на панели Chrome DevTools Network, проблема исчезнет (т.е. когда я щелкну обратно, я вижу форму, предварительно скомпилированную с ранее вставленными данными). Поэтому я попытался добавить never_cache
декоратор LoginView
просто чтобы увидеть, но потом понял, что это представление (очевидно) уже имеет примененный декоратор.
Интересно, в чем проблема и как ее решить.