After user selects/inputs the data of interest, how can I use that result to execute another function -- then using the 2nd function's result either in the same page, or another page.
Consider this MWE
from flask import Flask,render_template
from flask_wtf import FlaskForm
from wtforms.fields import DecimalRangeField, SubmitField, StringField
from wtforms.validators import Length, InputRequired
import uuid
app = Flask(__name__)
app.config['SECRET_KEY'] = uuid.uuid4().hex
# form to collect user input:
class InputForm(FlaskForm):
feature = StringField('feature', default='', validators=[InputRequired(), Length(min=3, max=45)])
project = StringField('project', default='', validators=[InputRequired(), Length(min=3, max=45)])
submit = SubmitField('Submit')
@app.route("/", methods=['POST', 'GET'])
def index():
form = InputForm()
if form.validate_on_submit():
# get user input
selected_feature = form.feature.data
selected_project = form.project.data
return render_template("index.html", form=form)
if __name__=="__main__":
app.run()
with Index.html
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<div class="container">
<form action="" method="post" role="form">
{{ form.csrf_token }}
<!-- START ROW -->
<!-- Feature Name -->
<p>
<span class="f5">Feature Name</span><span class="f6 i mid-gray fr"></span>
</p>
<p>
<span class="slider">{{ form.feature() }}</span>
<span id="val_feature" class="fr"></span>
</p>
<!-- Project Name -->
<p>
<span class="f5">Project Name</span><span class="f6 i mid-gray fr"></span>
</p>
<p>
<span class="slider">{{ form.project() }}</span>
<span id="val_project" class="fr"></span>
</p>
<div class="br3 box bg-white pa3 mt2 center-align">
{{ form.submit(class_="btn") }}</div>
</div>
</div>
</body>
</html>