测试之路python-flask框架:路由和蓝图

本文介绍了Flask框架中的核心概念——路由和蓝图。路由如同门牌号,通过装饰器将请求映射到特定方法。示例展示了如何创建路由并运行Flask应用。蓝图则用于组织视图函数,提高代码可维护性,通过创建包和模块分离视图,实现项目结构优化。学习蓝图有助于大型项目中的代码管理和问题定位。

哈喽,大家好,我是歪小王,本期内容就聊聊MTV中的V(视图函数)中比较核心的两个概念---蓝图与路由。

01.路由

路由在很多开发框架中是一个很重要的概念。它就好比门牌号一样,可以通过路径,精确定位到某个方法。

在python中。路由是通过装饰器来表现这种形式的。它能够准确的将浏览器发出的请求,发送给指定方法。下面用一个小示例,说明下路由的绑定与浏览器访问。

  • 新建一个flask项目。导入flask包,然后实例化flask对象。

  • 创建一个方法,并在方法上面使用@app.route("/路由路径")装饰器绑定路由。

    • 注意:视图函数中的所有方法。都需要return一个结果。

    • 完成上面的步骤后,可以在命令行输入python app.py的命令运行该程序。这里需要注意,使用命令行,首先要进到当前项目的根目录,或者键入项目的绝对路径。如下图所示结果图。我们可以使用程序返回的链接访问,也可以在浏览器输入后访问。

说明:在app.run中,可以指定运行地址以及端口号,如果为空,则默认为127.0.0.1:5000。如果为0.0.0.0则允许用户通过ip地址访问本机,也就是外网也可以访问。(后续部署到服务器时,会用到这个方法)

以上就是路由的绑定,与访问。是不是很简单?大家可以动手试试哈。如果访问中出现not found这种情况的话,不要慌,先看看路由路径是否正确。我在刚接触flask的时候,总忘记浏览器地址栏中输入路由地址。

02.蓝图

在上面的示例中,我们可以看到视图函数写入到了app的运行文件中。一个项目中有成百上千个这样的函数。如果全部放在这一个模块中。在维护的时候,就需要在上千行上万行代码中去寻找bug。蓝图就可以解决这个问题。

蓝图,就是将视图函数与其他代码进行组装的一种方式。可以将视图函数与其他配置文件进行分离。

  1. 分离app模块(以下步骤比较绕。可以跟着小王一起敲)。

    • 首先新建一个apps的包,然后在初始化文件中定义一个创建app的方法。并返回app。

    • 而后在apps的层级下创建一个view包并创建一个view模块。专门用来存放某一类的视图函数。比如下图的user_view包主要是用来处理用户相关信息的。

    • 接下来就是进入view函数中进行蓝图绑定与注册。

  2. 实例化app文件

    1. 进入app.py文件中。删除原有的代码。调用apps中的creat_app方法实例app对象

    2. 至此。蓝图的绑定就成功了。从上述步骤来说,分离了视图函数,分离了app的运行配置文件。虽然步骤看起来麻烦点,但是从代码维护的角度上来看,这样更方便项目的维护以及问题的定位。

  3. 配置文件:在项目中,会单独定义一个settings.py的文件用来存放配置信息。调用时如上方在creat_app中调用app.config.from_object(配置文件名)方法,加载指定的配置文件名

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值