Ich bin ein Newbee lernen Flask und versuche herauszufinden, wie Daten in meiner kleinen App hin und her übergeben. Der folgende Code gibt den Fehler "Fehlercode: Unhandled Exception" zurück, wenn ein gültiger Zug gespielt wird und ich wirklich nicht herausfinden kann, was falsch ist? (Die anderen beiden Optionen funktionieren einwandfrei.)Flask: Kann Wörterbuch in Jinja HTML-Vorlage nicht anzeigen
py code: theBoard = [{1: '', 2: '', 3: '', 4: '', 5: '', 6: '' , 7: ' ' 8:'', 9:‘‚}]
@app.route('/test', methods=["GET", "POST"])
def test():
if request.method == 'POST':
x = request.form['move']
move = int(x)
valid_moves = [1,2,3,4,5,6,7,8,9]
if move not in valid_moves:
return 'you did not specify a valid move, please try again!'
elif theBoard[move] != ' ':
return 'you can not play that space, it is taken'
else:
theBoard[move] = 'X'
return render_template("test2.html", theBoard=theBoard)
return render_template("test.html")
HTML-Code:
<table>
{% for key, value in theBoard.iteritems() %}
<h1>Key: {{key}}</h1>
<h2>Value: {{value}}</h2>
{% endfor %}
</table>
Etwas ging falsch mit meiner Einrückung. der erste Code: theBoard = [{1: '', 2: '', 3: '', 4: '', 5: '', 6: '', 7: '', 8: '', 9: ''}} ist ein Teil der .py-Datei –
Ich habe Folgendes im Fehlerprotokoll gefunden: Datei "/home/majaokholm/mysite/flask_app.py", Zeile 19, im Test elif theBoard [move]! = '': IndexError: Listenindex außerhalb des Bereichs –
Es war dort die ganze Zeit, ich habe es gerade jetzt gefunden –