TurboGears:一站式的Python开源模组大集合
程序员文章站
2022-05-07 11:41:38
...
TurboGears是一款基于Python的Web开发框架,它由许多子项目所构成,可以帮助开发者将许多主要组件集成在一起,主要提供网页前端到后端整合的网站框架。目前的最新版本为2013年8月25日发布的 TurboGears 2.3.0。代码托管在Github上,遵循MIT开源协议。
TurboGears可以帮助开发者在数分钟内创建一款基于数据驱动、ready-to-extend的应用程序。代码编写简单、并且拥有非常友好的模板、强大灵活的对象关系映射(ORM)。此外,TurboGears可*使用超过五千种Python语言各种领域的模组、大部分组件都可*替换。
特色
- 用最好的Python开源组件;
- 交互式的开发体验;
- 可*组合偏好的开发模块 (Integration);
- 内建网页服务器,ORM、AJAX能力,默认可以产生html、json等格式;
- 不用安装Apache网页服务器就可以开始开发网页应用程式,可以单独布署或搭配Apache, lighttpd网页服务器使用;
- 不用安装数据库MySQL/ PostgreSQL就可以开始开发数据库网站;
- 方便的布署能力;
- 众多插件 (Extension) 支援;
- 可扩充的命令列工具(tg-admin),可以协助产生基本专案或插件模板和建立数据库等工作;
- 可扩充的网页接口的工具箱(ToolBox),内含资料模型设计工具(Model Designer),资料编辑工具 (Catwalk),网站多国语言化工具等。
TurboGears使用MVC的方式组织网站,提供网页框架快速生成工具,开发中自动即时重载网页服务器。由许多各自独立的库和中间层建立的。其中一些默认的工具从1.x至2.x各不相同,但是大多数的这些组件都能根据配置而被互相替用。 下面是TurboGears的核心组件:
- SQL Alchemy(Model):定义了数据表的结构,并且让用户的控制层可以访问这些对象。
- Genshi(View) :定义了用以生成HTML或XHTML的模板,用于前台和客户端访问的页面。
- Pylons (Controller) :负责处理后台逻辑与显示数据的页面之间的中间层。默认的,使用了Paster作为服务器。但是用户也可以连接Apache、Nginx,或者使用WSGI与其兼容。
- Repoze:Repoze.who & Repoze.what是用来处理安全(访问授权)控制,repoze预先声明了谁在什么条件下可以访问哪些页面。
- Tosca Widgets:这是主要用来创建表单和复杂GUI的一个库。Tosca默认只会生成简单的HTML表单,但是也能用来连接更高级的JavaScript工具包。不同于 TurboGears 1.x, 现在已不再用有一个集成的JavaScript库
上一篇: java 常用方法