我有许多以landingpage
开头并以唯一ID结尾的网址。我需要能够从URL获取id,以便我可以将一些数据从另一个系统传递到我的Flask应用程序。我怎样才能得到这个值?
http://localhost/landingpageA
http://localhost/landingpageB
http://localhost/landingpageC
答案 0 :(得分:19)
这在文档的quickstart中得到了解答。
您需要一个变量网址,您可以通过在网址中添加<name>
占位符并在视图函数中接受相应的name
参数来创建该网址。
@app.route('/landingpage<id>') # /landingpageA
def landing_page(id):
...
更典型地,网址的各个部分用/
分隔。
@app.route('/landingpage/<id>') # /landingpage/A
def landing_page(id):
...
使用url_for
生成网页的网址。
url_for('landing_page', id='A')
# /landingpage/A
您也可以将该值作为查询字符串的一部分传递,并get it from the request,但如果始终要求它,则最好使用上述变量。
from flask import request
@app.route('/landingpage')
def landing_page():
id = request.args['id']
...
# /landingpage?id=A
答案 1 :(得分:1)
像这样的例子
@app.route('/profile/<username>')
def lihat_profile(username):
return "welcome to profile page %s" % username