如何根据 HTML 中的用户表单输入路由 Flask url?
How to route Flask url based on user form input in HTML?
我有一个 html 表单,用户可以在其中输入股票代码。提交代码后,我希望应用程序重定向到 url,它在 url 路径中输入了代码,returns 代码名称。
代码:
@app.route('/', methods=['GET', 'POST'])
def stockInfo():
if request.method == "POST":
ticker = request.form['ticker'].upper()
return redirect('/<ticker>')
return render_template('home.html')
@app.route('/<ticker>', methods=['GET', 'POST'])
def success(ticker):
return '<h1>The ticker' + ticker + 'was entered </h1>'
我想要发生的是当用户提交代码 "NFLX"
时它路由到 /NFLX
和 returns "The ticker NFLX was entered"
您可以使用 Flask 的 url_for 函数来完成此操作:
@app.route('/', methods=['GET', 'POST'])
def stockInfo():
if request.method == "POST":
ticker = request.form['ticker'].upper()
return redirect(url_for('success', ticker=ticker))
return render_template('home.html')
@app.route('/<ticker>', methods=['GET', 'POST'])
def success(ticker):
return '<h1>The ticker' + ticker + 'was entered </h1>'
我有一个 html 表单,用户可以在其中输入股票代码。提交代码后,我希望应用程序重定向到 url,它在 url 路径中输入了代码,returns 代码名称。
代码:
@app.route('/', methods=['GET', 'POST'])
def stockInfo():
if request.method == "POST":
ticker = request.form['ticker'].upper()
return redirect('/<ticker>')
return render_template('home.html')
@app.route('/<ticker>', methods=['GET', 'POST'])
def success(ticker):
return '<h1>The ticker' + ticker + 'was entered </h1>'
我想要发生的是当用户提交代码 "NFLX"
时它路由到 /NFLX
和 returns "The ticker NFLX was entered"
您可以使用 Flask 的 url_for 函数来完成此操作:
@app.route('/', methods=['GET', 'POST'])
def stockInfo():
if request.method == "POST":
ticker = request.form['ticker'].upper()
return redirect(url_for('success', ticker=ticker))
return render_template('home.html')
@app.route('/<ticker>', methods=['GET', 'POST'])
def success(ticker):
return '<h1>The ticker' + ticker + 'was entered </h1>'