python - 从 jinja 模板中恢复值
问题描述
我想恢复在我的 jinja 模板中输入的值。首先,我输入一个“x8”值,它将重复 jinja 接口(即如果“x8”=2,那么接口将有 2 个请求。这是我的 .py 文件:
import os
from flask import Flask, request, session, redirect, render_template
app = Flask(__name__)
app.secret_key = "hello"
@app.route('/begin', methods=['GET', 'POST'])
def form():
if request.method == 'POST':
x8 = request.form['x8']
session ['x8'] = x8
return redirect("http://127.0.0.1:5000/go", code=302)
return '''<form method="POST">
Input x8: <input type="text" name="x8"><br>
<input type="submit" value="Input"><br>
</form>'''
@app.route('/go', methods=['GET', 'POST'])
def what():
x8 = int(session['x8'])
EFT = int()
if request.method == 'POST':
y1 = request.form['y1']
y2 = request.form['y2']
EFT = int(y1) + int(y2)
session ['EFT'] = EFT
return redirect("http://127.0.0.1:5000/resi", code=302)
return render_template('stack.html', x8=x8)
@app.route('/resi')
def res():
EFT = int(session['EFT'])
return str(EFT)
if __name__ == '__main__':
app.config['SESSION_TYPE'] = 'filesystem'
app.run(debug=True, port=5000)
所以,问题是它只保存第一个请求,这里是 html:
<body>
<form action="" method="POST">
{% for i in range(x8) %}
Input y1: <br>
<input type="text" value="{{ contact }}" name="y1"><br>
Input y2: <br>
<input type="text" value="{{ contact }}" name="y2"><br>
<br>
{% endfor%}
<input type="submit" value="Input"><br>
</form>
</body>
如何保存总“y1”和总“y2”以获得最终结果“EFT”