最近用flask开发一个web应用,其中有一个搜索页面和结果页面,搜索页面有多个表单,目前在搜索页面的路由函数中已经成功处理这些表单,得到的结果存储在了一个list类型的变量里面,我想将这个变量传递到另一个页面也就是结果页面中,将结果显示出来,有什么路由之间传递参数的方法吗
@app.route('/search', methods=['get', 'post']) #这是搜索页面
def fsearch():
....
if request.method == 'POST':
results = multiselect(request) #这是处理表单的函数,reslults为list类型变量
...
return render_template("new.html")
@app.route('/result', methods=['get', 'post']) #这是结果页面
def fresult():
...
return render_template("result.html")
用个全局变量
请求直接对应结果。
为什么一个请求结束后还要再去做一个请求得到结果?
用redirect函数
return redirect(url_for('fresult')),函数里面就能追加参数了。
雷雷
为什么一定要用post呢,可以参考我的实现
demo