我尝试了这种方法,以通过url_for方法将表单输入变量传递给函数。但是它不起作用。谁能检查一下并让我知道这段代码有什么问题。
功能
:@app.route('/report_data/<year>/<week>', methods = ['POST'])
def report_data(year,week):
print year
print woy
HTML代码:
<html>
<body>
<form action="{{ url_for('report_data', year=n_year, week=n_woy) }}" method="post">
<h3> Enter the details </h3>
Year :
<input type="text" name="n_year"> <br>
<br>
Week :
<input type="text" name="n_woy"> <br>
<br>
<input type="submit" value="Submit"> <br>
</form>
</body>
</html>
问题: 两个变量都“无” 。
答案 0 :(得分:0)
首先,如何在提交HTML代码之前将其提供年,周值? 您是否在函数中呈现了HTML模板?如果不是,那么烧瓶功能如何知道您要从该特定表格中寻找?
如果这是您的Flask应用代码-
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/report_data', methods = ['POST', 'GET'])
def report_data():
if request.method == 'POST':
result = request.form
query_year = result['n_year'].encode('ascii', 'ignore')
query_week = result['n_woy'].encode('ascii', 'ignore')
print(query_year, query_week)
return render_template('so_test.html')
if __name__ == '__main__':
app.run(debug=True)
并打开URL-
发布数据后,我可以在Flask应用程序控制台中看到此数据。
('2018','08')