Flask是目前最流行的Python Web框架之一。自2010年开源以来, Flask受到了越来越多的Python开发者的喜欢,其受欢迎程度不输于 Django。截至2018年6月,它在GitHub上已有近36 000个Star,2000多位 Watcher,是目前GitHub中Star数最多的Python Web框架。
Flask仅保留了Web框架的核心,其他的功能都交给扩展实现。如果 没有合适的扩展,你甚至可以自己编写。Flask不会替你做决定,也不会 限制你的选择。它足够轻量,你可以只用5行就编写出一个最简单的 Web程序,但并不简陋,它能够适应各类项目的开发。
因为Flask的灵活性,越来越多的公司选择Flask作为Web框架,甚 至开始从Django迁移到Flask。使用Flask的公司在国外有Netflix、 Reddit、Twilio、Mailgun等,在国内则有豆瓣、果壳、下厨房等,这说 明Flask能经受大型项目的挑战,能够适应各种需求。下图列出了部分使 用Flask的公司。
753.jpg
Flask是使用Python编写的Web微框架。Web框架可以让我们不用关 心底层的请求响应处理,更方便高效地编写Web程序。因为Flask核心简 单且易于扩展,所以被称作微框架(micro framework)。Flask有两个主 要依赖,一个是WSGI(Web Server Gateway Interface,Web服务器网关 接口)工具集——Werkzeug(http://werkzeug.pocoo.org/),另一个是 Jinja2模板引擎(http://jinja.pocoo.org/)。Flask只保留了Web开发的核心 功能,其他的功能都由外部扩展来实现,比如数据库集成、表单认证、 文件上传等。如果没有合适的扩展,你甚至可以自己动手开发。Flask不 会替你做决定,也不会限制你的选择。总之,Flask可以变成任何你想要 的东西,一切都由你做主。
Flask(瓶子,烧瓶)的命名据说是对另一个Python Web框架—— Bottle的双关语/调侃,即另一种容器(另一个Python Web框架)。 Werkzeug是德语单词“工具(tool)”,而Jinja指日本神社,因为神社 (庙)的英文temple与template(模板)相近而得名。
网友评论