我正在使用Bootstrap和Flask设计一个小型网络计算器。但是我已经完成了,这是我的代码:
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
return render_template('finish.html',
number1=request.form['number1'],
number2=request.form['number2'],
finish=(request.form['number1'] * request.form['number2']))
else:
return render_template('index.html')
这是index.html
的一部分:
<form>
<div class="form-group">
<input type="text" class="form-control" name="number1" placeholder="Number1">
</div>
<div class="form-group">
<input type="text" class="form-control" name="number2" placeholder="Number2">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
所以我希望收到一个POST,并返回结果。但是当我尝试运行我的程序时,输入这两个数字并提交它们。该程序没有收到POST,这是日志:
127.0.0.1 - - [24/Sep/2015 22:20:25] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [24/Sep/2015 22:20:25] "GET /dist/js/bootstrap.min.js HTTP/1.1" 404 -
127.0.0.1 - - [24/Sep/2015 22:20:25] "GET /assets/js/ie10-viewport-bug-workaround.js HTTP/1.1" 404 -
127.0.0.1 - - [24/Sep/2015 22:20:29] "GET /?number1=12&number2=32 HTTP/1.1" 200 -
所以该程序收到类似GET /?number1=12&number2=32
的内容,而不是帖子。该网页仍在/
。如何将其更改为POST或使用/?number1=12&number2=32
?
答案 0 :(得分:4)
更改您的表单以便发布数据(您还必须添加一些引导信息):
<form method="POST" role="form" class="form-horizontal">
同时将按钮更改为输入:
<input type="submit" class="btn btn-default" value="Submit"/>