Es tut mir leid zu sagen, dass es ein Gedenkelement gibt.
Schreiben Sie unten ein vorlagenähnliches Programm. Die Verzeichnisstruktur ist
Qiita/ ├templates │ ├index.html │ └posted.html └app.py
app.py
from flask import Flask, render_template, request
app = Flask(__name__)
##Bis zu diesem Punkt ist wie eine Vorlage
@app.route('/home')
def home():
return render_template('index.html')
@app.route('/post',methods=['POST','GET'])
def post():
if request.method == 'POST':
all = request.form
return render_template('check.html',name=name,val = val)
if __name__ == "__main__":
#Sie können den Port auch so einstellen, dass er hier geöffnet wird.
app.run(host='0.0.0.0',port=5000,debug=True)
Jetzt möchte ich dieses Programm erklären.
python
@app.route('/home')
Wird überprüft, ob Sie auf "http: //0.0.0.0: 5000 / home" zugegriffen haben? Es ist eine Sache. Danach
python
return render_template('index.html')
Führen Sie dann templates / index.html
aus.
python
@app.route('/post',methods=['POST','GET'])
def post():
if request.method == 'POST':
all = request.form
return render_template('posted.html',data=all)
Wenn es sich dann um eine ** POST ** - oder ** GET ** -Methode handelt, wird sie verarbeitet.
Außerdem empfängt request.form
POST-Daten vom Typ dict
. Wenn beispielsweise "name =" tsukkey "" eingegeben wird, geben Sie "request.form [" name "] ein, um auf tsukkey zu verweisen.
In data = all
in render_template ()
fühlt es sich an, als würde man den POSTed-Wert an posted.html senden.
Die HTML-Datei wird nicht angehoben, da sie problematisch ist. Wenn Sie jedoch eine if-Anweisung oder etwas anderes schreiben, indem Sie sie in "{%%}" einschließen, ist sie im Grunde genommen recht gut.
Recommended Posts