我正在试着了解Flask是如何工作的。我在本地机器上运行了这个脚本:
@app.route('/ordini', methods=['GET', 'POST'])
def ordini():
global data_start, ora_start, data_stop, id, M1, M2, M3, M4, M5
if request.method == 'POST':
id = request.form['id']
data_start = request.form['data_start']
ora_start = request.form['ora_start']
data_stop = request.form['data_stop']
M1 = request.form['M1']
M2 = request.form['M2']
M3 = request.form['M3']
M4 = request.form['M4']
M5 = request.form['M5']
return render_template('ordine_macchine_necessarie.html',
id=id, data_start=data_start,
data_stop=data_stop,
ora_start=ora_start,
M1=M1, M2=M2, M3=M3, M4=M4, M5=M5)
return render_template('ordine.html')
每件事都运行得很好,我从ordine.html
获取值并将它们传递给ordine_macchine_necessarie.html
,但在我看来我没有以正确的方式传递这些值。我真的需要像id = request.form['id']
一样设置所有变量,然后像id=id
一样传递所有变量吗?我可以想象由50个或更多值组成的表单,我非常确定我没有正确地做一些事情。
如果我开始学习Django instad Flask会更好?一些用户说它更好!
发布于 2018-08-06 06:19:41
如果你只需要特定的filed,你可以这样做:
request_data = {
'id': request.form['id'],
'data_start': request.form['data_start'],
'ora_start': request.form['ora_start'],
'data_stop': request.form['data_stop'],
'M1': request.form['M1'],
'M2': request.form['M2'],
'M3': request.form['M3'],
'M4': request.form['M4'],
'M5': request.form['M5'],
}
# or dicitionary comprehension
# relevant_keys = ['id','data_start','ora_start','data_stop', 'M1', 'M2', 'M3', 'M4', 'M5']
# requst_data = {key: request.form[key] for key in relevant_keys}
return render_template('ordine_macchine_necessarie.html', **request_data)
如果你想要表单中的所有数据,你可以这样做:
return render_template('ordine_macchine_necessarie.html', **request.form)
至于Flask/Tornado/aiohttp/Falcon,在你进入Django之前,它们都是很好知道的,至少值得用它们来写一些小项目。
https://stackoverflow.com/questions/51698417
复制相似问题