我是Python / Flask的新手。我需要将名为“ dict”的“ cmz”函数中的字典传递给“ form”函数,以便调用html模板,并将同一本字典传递给页面。 我陷入困境是因为在运行它时,我只会得到一个字符串值,而不是一个对象。
我试图在“ form”函数的参数“ params”之前设置“ **”,但是它对我不起作用。
这是我的代码,感谢任何人的建议!
@app.route('/form<params>')
def form(params):
return render_template('index.html', result = params)
@app.route('/page/<distrib>')
def cmz(distrib):
if distrib == "cmz":
dict = {'aaa' : 'bbb', 'ccc' : 'ddd'}
return redirect(url_for('form', params = dict))
答案 0 :(得分:1)
您可以以字符串形式(例如"{1:2,2:3}"
)传递字典,然后将其转换回去。
幸运的是,有关如何执行此操作的问题已经得到广泛解答-Convert a python dict to a string and back
最简单的方法如下:
import json
json.dumps()
答案 1 :(得分:0)
这可以通过使用会话来完成。
您需要使用导入
from flask import session
您还需要确保通过使用设置了密钥
app.secret_key = 'a random string'
之后,您可以使用以下方式在会话中添加字典
dict = {'aaa' : 'bbb', 'ccc' : 'ddd'}
session['dict'] = dict
在另一条路线中,您可以通过反转该行来检索字典
dict = session['dict']
如果这不能解决您的问题,请告诉我,我们将很乐意为您提供帮助!