如何獲取在窗體上提交的用戶輸入以顯示在固定的URL上?Flask(Python):將輸入作爲參數傳遞給具有固定URL的不同路徑的函數
@app.route('/', methods=['GET','POST'])
def main():
if request.method == 'POST':
msg = request.form['message']
return redirect(url_for('display_msg', msg=msg))
else:
return form
@app.route('/msg')
def display_msg(msg):
return msg
當提交表單,我收到以下錯誤:
類型錯誤:display_msg()失蹤1個人需要的位置參數:「味精」
此代碼實際工作正常,如果我初始化msg
爲一個全局變量,然後在main
的頂部做global msg
,但它不允許我將msg
作爲參數傳遞給display_msg
。
這將工作的另一種方法是,如果我將@app.route('/msg')
更改爲@app.route('/<string:msg>')
,但這會將URL更改爲用戶在窗體上提交的任何不是我想要的內容。我希望URL得到修復。
我希望display_msg的URL是相同的,無論用戶在表單上輸入什麼內容。請閱讀我的文章的最後幾行。 – moravec