flask学习笔记(三):URL传参、URL反转、重定向

1、URL传参

对一个固定页面下传入url参数。需要给定一个id,并且使用<id>传参,这样才能返回一个值。

#-*- coding:utf-8 -*-
from flask import Flask

app = Flask(__name__)

@app.route("/")
def HelloWorld():
    return "HelloWorld!"

@app.route("/urlParams/<id>")
def urlParams(id):
    return "Your Params is %s !" % id

if __name__ == "__main__":
    app.run()

在地址栏随便输入一个参数123得到:

2、URL反转

想实现url反转需要导入模块url_for,并且已经知道要找的url对应的函数的名称。例如定义了一个pig函数,要找pig的url。

#-*- coding:utf-8 -*-
from flask import Flask, url_for

app = Flask(__name__)

@app.route("/")
def HelloWorld():
    print url_for("pig")
    print url_for("urlParams", id="1234")
    return "HelloWorld!"

@app.route("/pig/")
def pig():
    return "pig"

@app.route("/urlParams/<id>")
def urlParams(id):
    return "Your Params is %s !" % id

if __name__ == "__main__":
    app.run()

刷新网页后会发现终端打印了:

3、重定向

想实现url反转需要导入模块redirect。例如要访问默认主页但是会被重定向到pig页。注意,参数要写路由地址。

#-*- coding:utf-8 -*-
from flask import Flask, url_for, redirect

app = Flask(__name__)

@app.route("/")
def HelloWorld():
    return redirect("/pig/")
    return "HelloWorld!"

@app.route("/pig/")
def pig():
    return "pig"


if __name__ == "__main__":
    app.run()

访问主页会自动跳转到pig页

但是这种办法一旦url修改了,就可能因为要修改的地方太多导致出现错误。所以应该采用第二种办法:(借用url反转)

#-*- coding:utf-8 -*-
from flask import Flask, url_for, redirect

app = Flask(__name__)

@app.route("/")
def HelloWorld():
    pig_url = url_for("pig")
    return redirect(pig_url)
    return "HelloWorld!"

@app.route("/pig/")
def pig():
    return "pig"


if __name__ == "__main__":
    app.run()

这样即便修改url地址就只修改@app.route("/pig")一处即可。

PS:重定向多用于是否login

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值