Python Web框架:大牛都用那个?

Pyramid, Django, 和 Flask都是优秀的框架,为项目选择其中的哪一个都是伤脑筋的事。我们将会用三种框架实现相同功能的应用来更容易的对比三者。也可以直接跳到框架实战

Python Web框架:大牛都用那个?

简介

Flask是一个面向简单需求小型应用的“微框架(microframework)”。Pyramid和Django都是面向大型应用的,但是有不同的拓展性和灵活性。Pyramid的目的是更灵活,能够让开发者为项目选择合适的工具。这意味着开发者能够选择数据库、URL结构、模板类型等等。Django目的是囊括web应用的所有内容,所以开发者只需要打开箱子开始工作,将Django的模块拉进箱子中。

Django包括一个开箱即用的 ORM ,而Pyramid和 Flask让开发者自己选择如何或者是否存储他们的数据。到目前为止对于非Django的web应用来说最流行的ORM是SQLAlchemy,同时还有多种其他选择,从 DynamoDB和MongoDB 到简单本地存储的LevelDB 或朴实的SQLite。Pyramid被设计为可使用任何数据持久层,甚至是还没有开发出来的。

关于框架

Django已经内建了模板、表单、路由、认证、基本数据库管理等等。比较起来,Pyramid包括路由和认证,但是模板和数据库管理需要额外的库。

Flask历史相对更短,但它能够学习之前出现的框架并且把注意力放在了微小项目上。它大多数情况被使用在一些只有一两个功能的小型项目上。例如 httpbin,一个简单的(但很强大的)调试和测试HTTP库的项目。

Flask

Flask的hello world应用非常的简单,仅仅单个Python文件的7行代码就够了。

Python Web框架:大牛都用那个?

Django

Django 也有自己的 bootstrap 工具, 内置在 django-admin 中.

Python Web框架:大牛都用那个?

Python Web框架:大牛都用那个?

Django 默认只在项目中创建 空白的 model 和模板文件, 供新手参考的示范代码不多

模板

1、Django

Python Web框架:大牛都用那个?

Python Web框架:大牛都用那个?

Python Web框架:大牛都用那个?

Python Web框架:大牛都用那个?

Flask

Python Web框架:大牛都用那个?

Python Web框架:大牛都用那个?

Python Web框架:大牛都用那个?