# Исправление PRG-паттерна и окна повторной отправки (15.06.2026) ## Проблема При нажатии F5 (перезагрузка) браузер выдает окно «Подтвердите повторную отправку формы». Это происходит потому, что последним запросом был POST (на загрузку или на обработку), и страница отображается как результат этого POST-запроса. ## Решение: PRG (Post-Redirect-Get) Все POST-обработчики должны завершаться инструкцией `redirect(...)`. 1. Пользователь отправляет POST. 2. Сервер обрабатывает данные. 3. Сервер возвращает статус 302 (Redirect). 4. Браузер делает автоматический GET на новый URL. 5. Теперь в истории браузера последний запрос — GET. При нажатии F5 просто обновится страница без всяких окон. ## Что сделано: - В `app.py` проверено, что `_upload_files` делает `redirect("/?id=" + contract_id)`. - В `app.py` проверено, что `_process` делает `redirect("/?id=" + cid)`. - Добавлена очистка параметров, если они могут вызвать зацикливание. ## Статус - [x] Реализован Redirect после всех POST-запросов. - [x] Окно подтверждения больше не должно появляться при F5 на странице договора.