Возможно, вы захотите посмотреть Flask WTForms. WTForms - отличное расширение Flask, которое прекрасно справляется с этим. Это выглядело бы примерно так с использованием WTForms:
<div class="form-group">
{{ form.myField.label(class="form-control-label") }} {% if form.myField.errors %} {{ form.myField(class="form-control
form-control-lg is-invalid") }}
<div class="invalid-feedback">
{% for errors in form.myField.errors %}
<span>{{ error }}</span>
{% endfor %}
</div>
{% else %} {{ form.myField(class="form-control form-control-lg") }} {% endif %}
</div>
<form action="http://127.0.0.1:5000/addnote" method="post">
<input type="submit" class="btn btn-outline-info" name="submit_button" value="Retrieve Data">
</form>
А на стороне сервера было бы что-то вроде:
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField, BooleanField, SelectField
from wtforms.validators import DataRequired, Length, Email, EqualTo, ValidationError
class ToolForm(FlaskForm):
myField = StringField('Enter Data', validators=[DataRequired()])
@app.route('/addnote', methods=['GET', 'POST'])
def addnote():
form = ToolForm()
if request.method == 'POST':
if request.form['submit_button'] == 'Retrieve Data':
x = form.myField.data