Heim > Artikel > Backend-Entwicklung > Warum werden meine Flask-Formulardaten nicht übermittelt?
Formularwerte in Flask senden
Um Formularwerte effektiv in einer Flask-Anwendung zu veröffentlichen und abzurufen, stellen Sie sicher, dass Ihre Formularelemente ein eindeutiges und haben informatives Namensattribut.
Problem:
Im bereitgestellten Code fehlt den Formularfeldern das Namensattribut, was dazu führt, dass „request.form“ leer bleibt und ein 400-Fehler auftritt beim Versuch, auf Werte nach ID zuzugreifen.
<pre class="lang-html prettyprint-override"><input id="my_input" type="text" value="{{ email }}"> <input id="my_submit" type="submit" value="Submit"> </form>
Lösung:
Weisen Sie Ihren Eingabeelementen entsprechende Namenswerte zu:
<pre class="lang-html prettyprint-override"><input name="my_input" id="my_input" type="text" value="{{ email }}">
Einmal Wenn dies implementiert ist, interpretiert Flask die übermittelten Formulardaten korrekt und macht sie über request.form zugänglich:
@app.route('/page', methods=['POST', 'GET']) def get_page(): if request.method == 'POST': print(request.form) # prints ImmutableMultiDict({ 'my_input': {{ email }}}) print(request.form['my_input']) # displays the value of 'my_input' return render_template('page.html')
Das obige ist der detaillierte Inhalt vonWarum werden meine Flask-Formulardaten nicht übermittelt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!