我有这个html位:
<form action='quiz_answers'>
<p> Question1? </p>
<input type="radio" name="q1" value="2">Answer1</input>
<input type="radio" name="q1" value="1">Answer2</input>
<input type="radio" name="q1" value="0">Answer3</input>
<input type="radio" name="q1" value="0">Answer4</input>
<p> Question2? </p>
<input type="radio" name="q2" value="2">Answer1</input>
<input type="radio" name="q2" value="1">Answer2</input>
<input type="radio" name="q2" value="0">Answer3</input>
<input type="radio" name="q2" value="0">Answer4</input>
</form>
Run Code Online (Sandbox Code Playgroud)
和这个python代码:
from flask import Flask, render_template, request
@app.route('/quiz')
def quiz():
return render_template('quiz.html')
@app.route('/quiz_answers', methods=['POST'])
def quiz_answers():
q1 = request.form['q1']
q2 = request.form['q2']
q4 = request.form['q4']
q5 = request.form['q5']
if __name__ == "__main__":
app.debug = True
app.run(host='0.0.0.0')
Run Code Online (Sandbox Code Playgroud)
我如何添加一个按钮,在点击后+问题1和2被回答后,打开一个带有结果的新模板?简而言之,我如何制作一个按钮说"是的,问题已经回答,计算值并将它们返回到新的HTML页面"?
Flask快速入门教程确实通过HTTP请求,但在这种特定情况下没有回答我的问题.谷歌搜索只产生了 …
我看了其他答案,但看起来他们使用了2个不同的值.
代码:
user = ['X', 'Y', 'Z']
info = [['a','b','c',], ['d','e','f'], ['g','h','i']]
for u, g in user, range(len(user)):
print '|',u,'|',info[g][0],'|',info[g][1],'|',info[g][2],'| \n'
Run Code Online (Sandbox Code Playgroud)
基本上,它需要输出:
'| X | a | b | c |'
'| Y | d | e | f |'
'| z | g | h | i |'
Run Code Online (Sandbox Code Playgroud)
但相反,我得到这个错误:
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
for u, g in user, range(len(user)):
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)
据我所知,用户和范围(len(用户))具有相同的价值.