我已在Flask中编写此代码
ans = 999
@app.route('/', methods=['POST', 'GET'])
def home():
flag = 0
global ans
session["ans"] = 0
if (request.method == "POST"):
jsdata = request.form['data']
flag = 1
session['jsdata'] = jsdata
if (flag == 1):
ans = get_data(session['jsdata'])
return render_template('/index.html',ans=ans)
return render_template('/index.html',ans=ans)
当flag的值为0时,在index.html
中它显示999,但当flag的值更改为1并且if condition
被执行时index.html
仍然显示值999而不是值来自功能。当我在and
中打印if condition
进行调试时,它会显示正确的值。
答案 0 :(得分:2)
你真的根本不需要flag
,这让整个逻辑感到困惑:
@app.route('/',methods = ['POST','GET'])
def home():
if request.method == "POST":
jsdata = request.form['data']
session['jsdata']=jsdata
session['ans'] = get_data(session['jsdata'])
ans = session.get('ans', 999) # try to get it from the session,
# if fails, set it to 999 default value
return render_template('/index.html', ans=ans)