Flask(2):Flask的路由

1.写路由的注意点

  • url应该以/ 开头
  • url写法 标准的是 / url /
  • 视图函数不能重名
  • 习惯: 将视图函数的名字命名为 路由的名字

2.flask写路由的两种方式

方式一:装饰器法

@app.route('/index')
def index():
    return 'hello world'

方法二:在外边实现源码的方法

查看route的源码,发现实际就是往路由方法里添加参数

在这里插入图片描述

def hello():
    return 'hello'

app.add_url_rule(rule='/hello', view_func=hello)

3.反向获取url

  • 问题:当我们想在py文件中的函数内获取url的值
  • 解决:导入url_for模块,在route中通过endpoint给url起别名,通过模块url_for来获取
from flask import Flask, url_for

app = Flask(__name__)

# endpoint相当于给url起了别名,通过模块url_for来获取
@app.route('/index',endpoint='name1')
def index():
    print(url_for('name1'))
    print(url_for('name2'))
    return 'hello world'

@app.route('/login',endpoint='name2')
def login():
    return 'hello world'


if __name__ == '__main__':
    app.run(debug=True)

一运行index页面,显示结果
在这里插入图片描述

4.路由传参

<> 叫转换器语法 默认为string类型

string默认类型
int整形
float浮点型
path包含斜杠的路径,通常用于路径的拼接
uuid通用唯一识别码

①举例----默认传入字符串

在这里插入图片描述

②举例----改变默认传入的类型
在这里插入图片描述
③举例----传入path
在这里插入图片描述
④举例----传入uuid
在这里插入图片描述

5.路由的跳转

问题:比如我们以前开发了一个网站,网址是index,但是现在更新了,网址变为new_index,那么我们如何让以前的老用户输入原来的网址index,却进入我们的新的new_index页面呢?

from flask import Flask

app = Flask(__name__)

@app.route('/index/',redirect_to='/new_index/')
def index():
    return '老页面'

@app.route('/new_index/')
def login():
    return '新页面'


if __name__ == '__main__':
    app.run(debug=True)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张烫麻辣亮。

谢谢老板支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值