2017-09-17 1 views
-1

Also muss ich einen Eingabewert von einem HTML-Formular greifen und es in Kolben verwenden. Hier ist ein Beispiel für Python und HTML-Referenz:Abrufen Eingabewert aus Formular in HTML und verwenden Sie es in Kolben

Python:

@app.route("/post_field", methods=["GET", "POST"]) 

def need_input(): 

    for key in request.form["post_field"]:  

     if key == "value1": 
      #do the thing I want# 

html:

<form action="/post_field" method="post"> 
    <input type="hidden" name="this_name" value="value1" /> 
    <input type="submit" value="Press Me!"/> 
</form> 

Ich erhalte einen 400-Fehler, wenn ich das Drücken Sie auf Me-Eingang.

+0

Welche Port ist Ihr Entwicklungs-Server läuft auf? – Kyle

+0

@Kyle, localhost: 5000 –

Antwort

0

Das scheint für mich zu arbeiten. Ich kann auf die Formulardaten über request.form zugreifen, das wie ein Wörterbuch funktioniert. Sie können über den Formularschlüssel Werte mit request.form.items() durchlaufen (vorausgesetzt, es handelt sich um python3).

app.py

from flask import Flask, request 

app = Flask(__name__) 

@app.route("/post_field", methods=["GET", "POST"]) 
def need_input(): 
    for key, value in request.form.items(): 
     print("key: {0}, value: {1}".format(key, value)) 

@app.route("/form", methods=["GET"]) 
def get_form(): 
    return render_template('index.html') 

templates/index.html

<html> 
<head> 
</head> 
<body> 
    <form action="/post_field" method="post"> 
    <input type="hidden" name="this_name" value="value1" /> 
    <input type="submit" value="Press Me!"/> 
    </form> 
</body> 
</html> 
+0

perfekt! Ich hatte gedacht, dass dort irgendwo ein Wörterbuch involviert wäre, aber nicht über form.items() wusste, um sie zu greifen. Vielen Dank! –

+0

Kein Problem! Ich bin froh, dass wir es herausgefunden haben. – Kyle

Verwandte Themen