во первых валидацию можно написать на js
document.getElementById("myForm").addEventListener('submit', (event) => {
const data = new FormData(event.target);
if(!formValid(data)) {
event.preventDefault(); // отменяем action формы
return;
}
})
а во вторых можно не перегружать страницу
точно так же сделать свой обработчик на submit
в нем fetch post (ajax умер давно)
document.getElementById("myForm").addEventListener('submit', (event) => {
const data = new FormData(event.target);
fetch("/register", {
method: 'POST',
body: data
})
.then((response) => response.json())
.then((data) => {
// тут рисуешь алерты в DOM
})
.catch((error) => {
console.log(`fetch.post response came up with an error: ${error}`);
});
event.preventDefault();
})
а со стороны фляги
if request.method == 'POST':
data = request.form
ok, err = validateForm(data)
if not ok:
return jsonify(err)
DoRegisterUser(data)
return redirect(url_for(index))
в третьих если все же хочется оставить валидаторы wtf то просто надо сохранить состояние карточки
для этого при переворачивании карточки добавить/убрать бит в cookie
а при перезагрузке страницы прочитать этот бит и повернуть карточку нужной стороной
https://www.w3schools.com/js/js_cookies.asp
з.ы. может все совсем не так. я не настоящий сварщик (с)