bottle flask 框架对比

简介: Flask:Flask是一个轻量级的Web应用框架, 使用Python编写。

基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功 能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。
bottle:是Python的一个简单、快速和轻量级的WSGI微型Web框架,整个框架只有一个文件模块,除了Python 标准库之外,没有其他依赖项。

对比几点:

如果只看 hello world 的 demo,这两个应该没啥区别。 不过如果你愿意,flask 是可以和 django 同规模的框架,不同之处在于 django 是组装好的家具,flask 要你自己拧螺丝。
说实话,虽然看起来bottle设计的更简洁,但是实际开发的时候,就会觉得flask设计的更贴心,比如url_for,模板里面用config,等等
Bottle作为一个微框架,本身确实有些小型项目的缺点,尝试列举如下:
没有原生支持unicode
例如route('/

')获取的name并不是unicode类型,get和post的参数也默认并非unicode类型,虽然作者后来在0.10版本中给query和forms加入attr方式来解决这个问题,但是还是有所限制

而flask则是 unicode based,对unicode支持的非常好

影响力小,与其他组件的结合比较差
一个典型的例子就是wtforms不支持bottle的files字段,而flask虽然也不支持,但是flask的插件flask-wtforms则完美修正了这个问题

功能太基本
关于这一点,可以说是优点也可以说是缺点。绝对的纯粹看起来是件好事,但是真正开发起来又发现完全不是那么回事,自己要重新开发的轮子实在太多了。比如session的支持

bottle由个人开发,有些地方并不那么专业
反观flask,不能说flask的一切都是好的,但是确实在这几点上要比bottle做的要好一些,而且flask还有一些很实用的功能,比如实时debug,还有一些很实用的函数如url_for,而且flask与django确实有很大的相似性,这对flask本身的成熟度有很大的提高。

4.当然,实事求是,flask确实在设计上要比bottle复杂了很多,而且依赖了werkzeug,Bottle 自身并没有提供Session的支持,,可以使用beaker中间件或自己实现。

相关文章
|
2月前
|
搜索推荐 数据可视化 数据挖掘
基于Python flask框架的招聘数据分析推荐系统,有数据推荐和可视化功能
本文介绍了一个基于Python Flask框架的招聘数据分析推荐系统,该系统具备用户登录注册、数据库连接查询、首页推荐、职位与城市分析、公司性质分析、职位需求分析、用户信息管理以及数据可视化等功能,旨在提高求职者的就业效率和满意度,同时为企业提供人才匹配和招聘效果评估手段。
基于Python flask框架的招聘数据分析推荐系统,有数据推荐和可视化功能
|
5天前
|
Python
Flask学习笔记(二):基于Flask框架上传图片到服务器端并原名保存
关于如何使用Flask框架上传图片到服务器端并以其原名保存的教程。
15 1
|
5天前
|
Python
Flask学习笔记(三):基于Flask框架上传特征值(相关数据)到服务器端并保存为txt文件
这篇博客文章是关于如何使用Flask框架上传特征值数据到服务器端,并将其保存为txt文件的教程。
12 0
Flask学习笔记(三):基于Flask框架上传特征值(相关数据)到服务器端并保存为txt文件
|
7天前
|
JSON 测试技术 数据库
Python的Flask框架
【10月更文挑战第4天】Python的Flask框架
|
7天前
|
存储 安全 数据库
Flask框架中,如何实现用户身份验证和会话管理?
【10月更文挑战第4天】Flask框架中,如何实现用户身份验证和会话管理?
|
9天前
|
存储 SQL 数据库
使用Python和Flask框架创建Web应用
【10月更文挑战第3天】使用Python和Flask框架创建Web应用
18 1
|
23天前
|
JSON 测试技术 数据库
Python的Flask框架
Python的Flask框架
|
23天前
|
安全 数据安全/隐私保护 Python
基于Flask框架实现一个简易后台用户登录系统
基于Flask框架实现一个简易后台用户登录系统
58 1
|
1月前
|
JSON 测试技术 数据库
Python的Flask框架
Python的Flask框架
|
1月前
|
JSON 测试技术 数据库
Python的Flask框架
Python的Flask框架