Flask架构--路由和蓝图

这篇具有很好参考价值的文章主要介绍了Flask架构--路由和蓝图。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

学习视频:第二章:路由和蓝图 1 Flask查询路由的方式_哔哩哔哩_bilibili

参考:Flask框架之路由与蓝图的使用_flask 路由和蓝图-CSDN博客

1.路由的概念:
用于将http请求与特定的python函数相匹配。定义路由后,flask程序可响应url的请求,执行响应函数,并将结果返回给用户。(将一个url与特定的函数绑定。)

创建方法:@app.route装饰器。(装饰器@app.route(url)为某个url指定对应的视图函数)

falsk框架中,视图定义在那,路由就跟着在哪。查看所有的路由,需要查看所有的视图函数。

2.在一个统一的路口,查看所有的路由信息:

方式一:直接使用命令:flask routes(需要先制定app的),之后使用该命令,展示出的路由信息就是该app的路由信息。

Flask架构--路由和蓝图,flask,架构,python

输出结果为:视图函数名,请求方式,路径(只要加载静态图片就会存在static函数)。

Flask架构--路由和蓝图,flask,架构,python

方式二:直接在程序内部查看,通过app.url_map()方法。

Flask架构--路由和蓝图,flask,架构,python

Flask架构--路由和蓝图,flask,架构,python

需求一:在访问一个特定接口时,能够把flask后端中提供的所有路由都一次性展示给客户端。(需要对map对象进行处理,对输出格式进行微调,视图名称就是某种业务的名称)

app.url_map.iter_rules()方法返回一个列表。

Flask架构--路由和蓝图,flask,架构,python

Flask架构--路由和蓝图,flask,架构,python

更改函数:

Flask架构--路由和蓝图,flask,架构,python

点击链接进行指定页面,即可显示结果:

Flask架构--路由和蓝图,flask,架构,python

Flask架构--路由和蓝图,flask,架构,python

客户端在请求的过程中不止有ip地址、端口号和path路径,同样会指定请求的方式(get、post等),在确定函数编写前需要确定请求方式。

3.自定义请求方式

定义flask 视图时,如果不加入任何请求方式,他只支持get和自带的请求方式。

Flask架构--路由和蓝图,flask,架构,python

需要其他请求方式时,要放开请求方式,通过methods参数,他是一个列表形式的参数。

Flask架构--路由和蓝图,flask,架构,python

需求二:在构建一个网站时,不只有一个视图函数,业务逻辑处理多,可能需要定义很多接口,所以视图就会有很多。视图多的情况下,在文件中进行管理,用到蓝图。

4.蓝图:一种组织Flask程序路由的方式,更好地组织代码,使应用程序更加模块化、易于管理。通过使用蓝图,可以将应用程序划分成多个模块,每个模块内部定义自己的路由,将这些模块注册到主应用程序中。(Blueprint)

Flask架构--路由和蓝图,flask,架构,python

可以所有视图的所有路由添加前缀。

Flask架构--路由和蓝图,flask,架构,python

创建蓝图的三个步骤:

①创建一个蓝图对象,②在这个蓝图对象上进行操作,注册路由,指定静态文件夹,注册模板过滤器。③在应用对象上注册这个蓝图对象。

Flask架构--路由和蓝图,flask,架构,python

Flask架构--路由和蓝图,flask,架构,python

单文件蓝图和目录蓝图

Flask架构--路由和蓝图,flask,架构,python

对于目录文件,一般将蓝图对象放到某个指定目录包的__init__文件中,在该文件结尾在导入视图文件。

Flask架构--路由和蓝图,flask,架构,python

必须在视图文件结尾导入,负责会出现循环引用的问题。

Flask架构--路由和蓝图,flask,架构,python

Flask架构--路由和蓝图,flask,架构,python

5.蓝图内部的静态文件

Flask架构--路由和蓝图,flask,架构,python

6.蓝图内部模板目录

Flask架构--路由和蓝图,flask,架构,python

flask中debug模式的作用:

后端出现错误,会直接返回真实的错误信息给前端。

修改代码后,会自动重启开发服务器。文章来源地址https://www.toymoban.com/news/detail-796036.html

到了这里,关于Flask架构--路由和蓝图的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 06-Flask-蓝图的使用

    前言 本篇来学习下Flask中蓝图的使用 蓝图 在Flask中使用蓝图(Blurprint)来分模块组织管理 蓝图可以理解为存储一组视图方法的容器对象,特点如下: 一个应用可以具有多个Blueprint 可以将一个Blueprint注册到任何一个未使用的URL下 Blueprint可以有自己单独的模板、静态文件或其它的

    2024年02月06日
    浏览(27)
  • flask中的蓝图

    flask中的蓝图 在 Flask 中,蓝图(Blueprint)是一种组织路由和服务的方法,它允许你在应用中更灵活地组织代码。蓝图可以大致理解为应用或者应用中的一部分,可以在蓝图中定义路由、错误处理程序以及静态文件等。然后可以在工厂函数中多次注册同一个蓝图到应用上,可以

    2024年02月15日
    浏览(29)
  • Flask蓝图(Blueprint)

    Flask 是一个流行的 Python Web 框架,它提供了蓝图(Blueprint)的概念,用于帮助组织和管理大型的 Web 应用程序。本文将介绍 Flask 蓝图的基本概念、如何使用蓝图构建应用程序,以及深入理解蓝图的一些高级特性。   蓝图是一种将路由、视图函数和静态文件等组织在一起的方法

    2024年02月06日
    浏览(32)
  • Flask 高级应用:使用蓝图模块化应用和 JWT 实现安全认证

    本文将探讨 Flask 的两个高级特性:蓝图(Blueprints)和 JSON Web Token(JWT)认证。蓝图让我们可以将应用模块化,以便更好地组织代码;而 JWT 认证是现代 Web 应用中常见的一种安全机制。 在大型应用中,一个单独的 Python 文件可能无法容纳所有的路由和视图函数。这时,Flask 的

    2024年02月13日
    浏览(44)
  • Flask源码篇:Flask路由规则与请求匹配过程

    源码系列: Flask源码篇:wsgi、Werkzeug与Flask启动工作流程 Flask源码篇:2w字彻底吃透Flask是上下文原理 如果不想看具体的解析过程,可以直接看总结,一样可以看懂! 所谓的路由原理,就是Flask如何创建自己的路由体系,并当一个请求到来时,如何根据路由体系准确定位处理函

    2023年04月08日
    浏览(30)
  • flask路由添加参数

    flask路由添加参数 在 Flask 中,可以通过两种方式在路由中添加参数:在路由字符串中直接指定参数,或者通过 request 对象从请求中获取参数。 在路由字符串中指定参数:可以将参数直接包含在路由字符串中。参数可以是字符串、整数、浮点数等类型。 在 Flask 中,如果你需要

    2024年02月15日
    浏览(35)
  • Flask——接口路由技术

    Flask 是一个轻量级的 web 开发框架。 它依赖 jinja2 和 Werkzeug WSGI 服务的一个微型框架。 pip install flask linux/mac: 命令行运行 $ export FLASK_APP=hello $ flask run windows: 命令运行 set FLASK_APP=app.py flask run 代码调用 if name == ‘ main ’: app.run() 通过装饰器 @app.route 添加路由 通过 app.route(\\\'/user

    2024年02月05日
    浏览(42)
  • Flask 路由机制分析之一

    《Flask Run运行机制剖析》这篇我们讲了应用启动的内部机制,启动后就开始监听Http请求了,请求过来如何跳到对应的函数执行,这就是路由机制。我们沿用上一篇例子,来探究一下@app.route(\\\"/\\\")内部干了些什么事。 装饰器是在不改变对象结构的情况下向现有对象添加功能,它

    2024年02月07日
    浏览(34)
  • flask-----初始项目架构

    1.初始的项目目录  -apps  包 ------存放app  -user文件夹 -------就是一个app         -models.py      --------存放表模型         -views.py    -------存放主代码 -ext包         -init.py -------实例化db对象 -manage.py -----运行项目的入口 -setting.py  -----配置文件 2.各文件内容 manage.py setting.p

    2024年02月13日
    浏览(26)
  • Flask路由机制分析之二

    上篇 《Flask 路由机制分析之一》主要讲了Python函数的特性以及装饰器的基本概念,这节我们具体分析一下路由内部机制,Flask路由依赖于werkzegu的routing模块来实现。 Werkzegu库的routing模块主要功能在于URL解析,根据URL找到对应的视图函数,这就是路由,routing模块主要有三个类

    2024年02月07日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包