Pylons
网站类型 | Python框架开发 |
---|---|
语言 | English |
持有者 | 开源 |
編輯 | 匿名 |
网址 | pylonsproject |
商业性质 | No |
注册 | None |
推出时间 | 2010年12月27日 (2010-12-27) |
现状 | 活跃 |
Pylons计划是开发一组用Python书写的web应用技术的开源组织。最初这个计划只是一个叫做Pylons的单一的web框架,但是后来合并了repoze.bfg框架,并取了新名字Pyramid,Pylons计划现在由多个有关的web应用技术组成。
Pyramid
開發者 | Chris McDonough, Ben Bangert, Michael Merickel, Bert JW Regeer, Steve Piercy |
---|---|
首次发布 | 2008年7月8日,16年前(2008-07-08)[1] |
当前版本 | 2.0.2[2](2023年8月25日,12個月前) |
源代码库 | www |
编程语言 | Python |
操作系统 | 跨平台 |
类型 | Web应用框架 |
许可协议 | BSD License |
网站 | trypyramid |
Pyramid是用Python书写的开源web应用框架,它基于了WSGI。它是受到Zope、Pylons和Django启发的极简主义的web框架[3]。
Pyramid最初叫做“repoze.bfg”,它获得关注主要在于Zope[4]和Plone社区,随着开放社会基金会的KARL计划从Plone迁移至BFG[5]。在2010年宣布了Pylons框架将于版本1.5转移到使用BFG作为基础[6]。作为将BFG包括入Pylons计划的结果,BFG被重命名为Pyramid[7]。
特征
Pyramid是极简主义的跨平台web框架。它不预定持久化方式,可以通过SQLAlchemy集成于SQL数据库或集成于Zope对象数据库(英语:Zope Object Database)二者,还有其他NoSQL数据库比如CouchDB[3]。
Pyramid允许开发者使用正则表达式定义映射到对象的路由。同样跟从框架Zope,Pyramid允许层级对象遍历,这里URL的每个部份都是包含其他对象的对象,这种方式类似于文件系统中的文件夹[8]。
例子代码
from wsgiref.simple_server import make_server from pyramid.config import Configurator from pyramid.response import Response def hello_world(request): return Response('Hello World!') if __name__ == '__main__': with Configurator() as config: config.add_route('hello', '/') config.add_view(hello_world, route_name='hello') app = config.make_wsgi_app() server = make_server('0.0.0.0', 6543, app) server.serve_forever()
Pylons框架
開發者 | Ben Bangert, James Gardner |
---|---|
首次发布 | 2005年9月,19年前(2005-09)[9] |
当前版本 | 1.0.2[10](2015年7月22日,9年前) |
编程语言 | Python |
操作系统 | 跨平台 |
类型 | Web应用框架 |
许可协议 | BSD license |
网站 | pylonsproject |
Pylons是一个开放源代码的Web应用框架,使用Python语言编写。它对WSGI标准进行了扩展应用,提升了重用性且将功能分割到独立的模块中。
Pylons类似于Django和TurboGears。Pylons受Ruby on Rails影响很深:它的两个组件,Routes[11]和WebHelpers[12]是Rails特性的Python实现。
安装和依赖
Pylons的官方安装方法是从Python CheeseShop[13]下载使用EasyInstall[14]完成,而大部分的附加工具也通常以相同方式安装。
URL分派
Pylons普遍使用的URL分派器是Routes[11],实际是Ruby on Rails的URL分派的Python重新实现,其他的URL分派器只要是WSGI兼容也可以使用,例如Selector[15]。
HTML生成
另一个从Rails Pylons化的部分是WebHelpers[16],它提供了基于路径的URL映射。WebHelpers也提供了一些实用的功能来生成基于script.aculo.us(英语:script.aculo.us)和Prototype库的JavaScript代码。
模板
Myghty是缺省的Pylons模板语言,但在版本0.9.6它被替代为Mako[17]。也可以使用其他模板语比如Genshi(英语:Genshi (templating language))[18]。
数据库抽象和对象关系映射
Pylons没有默认的数据库程序库。可以使用比较有名的SQLObject和SQLAlchemy。
另见
参考
- ^ Pyramid Change History. The Pyramid Web Framework. Pylons Project. [10 March 2017]. (原始内容存档于2021-01-01).
- ^ Release 2.0.2. 2023年8月25日 [2023年9月19日].
- ^ 3.0 3.1 Chris McDonough. repoze.bfg introduction. [2010-09-21]. (原始内容存档于2013-12-30).
- ^ Gary Poster. Zope Summit, DZUG, repoze.bfg. 2010-09-17 [2010-09-21]. (原始内容存档于2011-08-13).
- ^ Thomas Moroz, Chris Rossi & Calvin Hendryx-Parker. KARL – large-scale Knowledge Management. Budapest, Hungary: Plone Conference 2009. 2009-10-28 [2010-09-23]. (原始内容存档于2010-06-02).
- ^ Ben Bangert. Emails explaining the Pylons 2 structure. 2010-09-18 [2010-09-21]. (原始内容存档于2022-04-01).
- ^ repoze.bfg is now Pyramid. [2011-01-03]. (原始内容存档于2010-11-13).
- ^ Wichert Akkerman. Lessons from other frameworks. Budapest, Hungary: Plone Conference 2009. 事件发生在 25:50. 2009-10-28 [2010-09-21]. (原始内容存档于2013-04-18).
- ^ History of Pylons. [2020-11-01]. (原始内容存档于2020-07-07).
- ^ Release 1.0.2. 2015年7月22日 [2018年7月22日].
- ^ 11.0 11.1 Routes
- ^ WebHelpers. [2015-12-15]. 原始内容存档于2015-12-22.
- ^ Python CheeseShop. [2008-08-11]. 原始内容存档于2008-07-19.
- ^ EasyInstall
- ^ Selector
- ^ WebHelpers
- ^ Haas, Christoph Beginning Pylons 互联网档案馆的存檔,存档日期2009-02-16.. Retrieved July 5, 2007
- ^ Genshi Wiki Pylons with Genshi (页面存档备份,存于互联网档案馆) Retrieved July 5, 2007
外部链接
- 官方网站
- 查
- 论
- 编
- CppCMS(英语:CppCMS)
- Wt(英语:Wt (web toolkit))
- CFWheels
- ColdBox Platform(英语:ColdBox Platform)
- ColdSpring(英语:ColdSpring Framework)
- Fusebox(英语:Fusebox (programming))
- Mach-II(英语:Mach-II)
- Model-Glue(英语:Model-Glue)
- Caveman2(英语:Caveman2)
- CL-HTTP(英语:CL-HTTP)
- UnCommon Web(英语:UnCommon Web)
- Weblocks
- Vibe.d(英语:Vibe.d)
- Happstack(英语:Happstack)
- Yesod(英语:Yesod (web framework))
- Snap(英语:Snap (web framework))
- AppFuse(英语:AppFuse)
- Flexive(英语:Flexive)
- Grails(英语:Grails (framework))
- GWT
- ICEfaces(英语:ICEfaces)
- ItsNat(英语:ItsNat)
- JavaServer Faces
- JHipster(英语:JHipster)
- Jspx(英语:Jspx-bay)
- JWt(英语:JWt (Java web toolkit))
- OpenXava(英语:OpenXava)
- Play
- Reasonable Server Faces(英语:Reasonable Server Faces)
- Remote Application Platform(英语:Remote Application Platform)
- RIFE(英语:RIFE)
- Seam(英语:JBoss Seam)
- Spring
- Stripes(英语:Stripes (framework))
- Struts
- Tapestry
- Vaadin(英语:Vaadin)
- Vert.x
- WebWork(英语:WebWork)
- Wicket
- WaveMaker(英语:WaveMaker)
- ZK
- Ample SDK(英语:Ample SDK)
- Angular(英语:Angular (application platform))/AngularJS
- Backbone.js
- Chaplin.js(英语:Chaplin.js)
- Closure(英语:Google Closure Tools)
- Dojo Toolkit
- Ember.js
- Extjs
- JQuery
- Meteor(英语:Meteor (web framework))
- MooTools(英语:MooTools)
- Node.js
- Prototype
- React
- Rico
- script.aculo.us(英语:script.aculo.us)
- Sencha Touch(英语:Sencha Touch)
- SproutCore(英语:SproutCore)
- Vue.js
- Wakanda(英语:Wakanda (software))
- CakePHP(英语:CakePHP)
- CodeIgniter
- Fat-Free
- FuelPHP
- Gyroscope(英语:Gyroscope (software))
- Horde(英语:Horde (software))
- Kohana(英语:Kohana (framework))
- Laravel
- Lithium(英语:Lithium (software))
- Midgard(英语:Midgard (software))
- MODX(英语:MODX)
- Nette(英语:Nette Framework)
- Phalcon
- PRADO(英语:PRADO (framework))
- Qcodo(英语:Qcodo)
- Silex(英语:Silex (web framework))
- SilverStripe
- Symfony
- TYPO3
- Xaraya(英语:Xaraya)
- XOOPS
- Yii(英语:Yii)
- Zend framework
- Camping(英语:Camping (microframework))
- Merb(英语:Merb)
- Padrino(英语:Padrino (web framework))
- Ruby on Rails
- Sinatra(英语:Sinatra (software))
- Yew
- Lift
- Play
- Scalatra(英语:Scalatra)
- AIDA/Web(英语:AIDA/Web)
- Seaside(英语:Seaside (software))
|