ich möchte gerne zwei Forms "verbinden", in dem SelectionField möchte ich mir eine Option auswählen und mir die Details abrufen. Die Details sollen dann in mehreren Input Feldern geschrieben werden, wo ich die Details editieren und speichern kann. Bei mir hakt es aktuell daran, wie ich die Details in die Input Felder bekomme.
forms.py
Code: Alles auswählen
class Form1(FlaskForm):
select = SelectField('Test', choices=[], coerce=str)
submit = SubmitField('Get Data')
class Form2(FlaskForm):
field1 = StringField('field1', validators=[DataRequired()])
submit = SubmitField('Save')
Code: Alles auswählen
@app.route("/", methods=['GET', 'POST'])
def index():
test = ["1", "2", "3"]
form1 = Form1()
form1.select.choices = test
form2 = Form2()
if request.method == 'POST':
if form1.select.data:
print(form1.select.data) # Wird gegen eine SQL Abfrage getauscht
# Hier sollten dann die Input Felder mit den Details gefüttert werden
# Redirect? Oder ist es möglich as ganze ohne Reload der Seite zu bewerkstelligen?
return render_template('index.html', form1=form1, form2=form2)
Code: Alles auswählen
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="" method="post">
{{ form1.select(size="30") }}
{{ form1.submit }}
</form>
<form action="" method="post">
{{ form2.field1.label }}
{{ form2.field1 }}
{{ form2.submit }}
</form>
</body>
</html>
Danke & Gruß