前言

请在使用 Flask 前阅读。希望本文能回答你一些关于 Flask 的用途和目标以及 Flask 适用情境的问题。

“微” 是什么意思?

“微”(micro) 并不表示你需要把整个 Web 应用塞进单个 Python 文件(虽然确实可以 ),也不意味着 Flask 在功能上有所欠缺。微框架中的“微”意味着 Flask 旨在保持核心 简单且易扩展。Flask 不会替你作出过多选择,比如使用何种数据库。并且,Flask 已经选择好的,比如使用何种模板引擎,是易于修改的。除此之外的一切都取决于你, 因此 Flask 可以满足你的一切需求。

默认情况下,Flask 不包含数据库抽象层、表单验证或是任何其它现有库可以胜任的东 西。作为替代的是,Flask 支持扩展来给应用添加这些功能,如同是在 Flask 自身 中实现。众多的扩展提供了数据库集成、表单验证、上传处理、多种开放认证技术等功 能。Flask 可能是“微小”的,但它已经能在需求繁杂的生产环境中投入使用。

配置与惯例

Flask 数目众多的配置选项在初始状况下都有一个明智的默认值,并遵循一些惯例。 例如,按照惯例,模板和静态文件存储在应用的 Python 源代码树下的子目录中,名称 分别为 templatesstatic 。虽然可以更改这个配置,但你通常不必这么做, 尤其是在刚接触 Flask 的时候。

与 Flask 共成长

当你配置好并运行 Flask,你会发现社区中有许多可以集成到生产环境项目的扩 展。Flask 核心团队会审阅这些扩展,确保经过检验的扩展在未来版本中仍能适用。

随着你的代码库逐渐庞大,你仍会在把握项目设计决策上拥有自由。Flask 会继续尽可 能提供 Python 应该提供的一个非常简单的胶水层。你可以在 SQLAlchemy 或其它数据 库工具中实现更高级的模式,酌情引入非关系型数据持久化,也可以从框架无关的 WSGI (Python 的 Web 接口) 工具中获益。

Flask 里有许多可以定制其行为的钩子。如若你需要更深层次的定制,可以继承 Flask 类。 如果你对此有兴趣,请阅读 聚沙成塔 章节。如果你好奇 Flask 的设计原 则,请查阅 Flask 中的设计决策 章节。

继续阅读 安装快速入门 、或 给有经验程序员的前言.

內容目录

相关主题

本页