一、视频教程
02_Flask是什么
二、Flask简介
Flask 框架诞生于2010 年,是由 Armin 使用 Python 语言基于 Werkzeug 工具箱编写的轻量级Web开发框架。Armin 是 Python 编程语言的核心开发者之一,同时也是 Flask 项目的主要贡献者。
Flask主要依赖于两个核心库:Werkzeug(用于路由和WSGI 工具)和 Jinja2 (模板引擎),旨在帮助开发者快速、简便地创建 Web 应用。
WSGI的全称是Web Server Gateway Interface,翻译过来就是Web服务器网关接口。具体的来说,WSGI是一个规范,定义了Web服务器如何与Python应用程序进行交互,使得使用Python写的Web应用程序可以和Web服务器对接起来。
Jinja2 是Flask原生支持的唯一模板引擎,当然你也可以使用 Flask 扩展的其他模板引擎。Jinja2 有丰富的过滤系统、强大的自动转义功能、有一定的模板继承能力、支持从模板内或者Python 代码内复用块(宏)、支持迭代模板渲染以及可配置语法等等。
Flask被称为"微框架"(microframework),因为它使用简单的核心,用扩展增强其他功能。"微"并不代表整个应用只能塞在一个 Python 文件内, "微"也不代表 Flask 功能不强,微框架中的"微"字表示 Flask 的目标是保持核心简单而又可扩展。Flask 不包含数据库抽象层、表单验证或者其他已有的库可以处理的东西。然而, Flask 通过扩展为应用添加这些功能,就如同这些功能是 Flask 原生的一样。大量的扩展用以支持数据库整合、表单验证、上传处理和各种开放验证等等。
官方文档:Welcome to Flask --- Flask Documentation (3.1.x)
中文文档:欢迎来到 Flask 的世界 --- Flask中文文档(3.1.x)
目前Python的web框架有很多,除了Flask,还有django、Web2py等等。其中Django是目前Python的框架中使用度最高的。但是Django多被用于大型网站的开发,但对于大多数的小型网站的开发,使用Flask就可以满足,和其他的轻量级框架相比较,Flask框架有很好的扩展性,这是其他Web框架不可替代的。
三、MVT设计模式
Flask是一个基于MVT设计模式的Web后端框架
MVC与MVT设计模式的对比:
四、Flask的特点
4.1 轻量级和灵活性
Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全。开发人员便于分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或Web服务的实现。
4.2 易于上手
Flask的API设计简洁,文档齐全,对新手非常友好,能够快速上手。
4.3 强大的社区和插件库
Flask拥有一个活跃的社区和丰富的插件库。Flask很强的定制性,用户可以根据自己的需求来添加相应的功能,在保持核心功能简单的同时实现功能的丰富与扩展,其强大的插件库可以让用户实现个性化的网站定制,开发出功能强大的网站。