我需要将一个变量var
从 HTML 页面传递到烧瓶,并尝试了下面的代码,但问题是 request.form 将var
s 类型从 dict 更改为 string。我曾经json.loads(item)
把它改回来,但变量 dict 包含一个datetime
值,它给出了一个错误
json.decoder.JSONDecodeError: Expecting value: line 1 column 95 (char 94)
。我宁愿不必处理它从一开始就改变类型的问题,有没有人对将变量从 HTML 传递到 Flask 有更好的想法?
在my_bookings.html
:
<form action="#" method="POST">
<input name="cancel_var" value="{{var}}" type=hidden>
<button type="submit"> Cancel var </button>
</form>
在app.py
:
@app.route('/my_bookings', methods=['GET', 'POST'])
def my_bookings():
if request.method == 'POST':
var = request.form['cancel_var']
cancel_var = json.loads(var) # This gives a json.decoder error because of one value is datetime-object
为了澄清,这var
是一个字典并包含:
var = {"number": 3, "date": datetime.datetime(2020, 5, 14, 0, 0)}
并<class 'str'>
以 Flask 的形式返回,但我希望它保留为 dict。