Pylons (web framework)

Pylons (web framework)

Infobox_Software
name = Pylons

latest_release_version = 0.9.6.2
latest_release_date = May 28, 2008
genre = Web application framework
license = BSD License
programming language = Python
operating_system = Cross-platform
website = [http://www.pylonshq.com/ www.pylonshq.com]
developer = Ben Bangert, James Gardner

Pylons is an open source web application framework written in Python. It makes extensive use of the WSGI standard to promote reusability and to separate functionality into distinct modules.

Pylons is the newest of the current crop of web application frameworks, which also includes Django and TurboGears. It is strongly influenced by Ruby on Rails: two of its main components, [http://routes.groovie.org Routes] and [http://pylonshq.com/WebHelpers WebHelpers] , are Python reimplementations of Rails features.

tructure

Pylons is well-known for having a near-complete stack of third-party tools, eschewing definitively the NIH phenomenon.

Installation, dependencies, and setup

The official installation method of Pylons is through [http://peak.telecommunity.com/DevCenter/EasyInstall EasyInstall] via the [http://cheeseshop.python.org Python CheeseShop] , and most of the additional tools are typically installed the same way. EasyInstall also handles package dependencies when relevant. Some distributions could also package Pylons and Paste, but it is likely that any distribution's packages would lag the official distribution. Pylons may also be installed by hand by renaming its .egg file to .zip and extracting the contents.

Paste is used for project setup, testing, and deployment. Using the common INI configuration format, Paste allows for multiple "profiles," so that developers can run development and deployment setups from the same codebase without revealing sensitive parts of Pylons, such as the interactive debugger, to production users.

URL dispatch

Currently the only widely used URL dispatcher for Pylons is [http://routes.groovie.org Routes] , a Python reimplementation of Ruby on Rails' URL dispatching, although any WSGI-compatible URL dispatcher can be used, such as [http://cheeseshop.python.org/pypi/selector Selector] .

HTML generation

Another piece of Rails adapted for Pylons is [http://pylonshq.com/WebHelpers WebHelpers] , which provides URL mapping based on the Routes configuration. WebHelpers also provides some utility functions for generating JavaScript code making use of the script.aculo.us and Prototype libraries.

[http://formencode.org FormEncode] and [http://formbuild.org/ FormBuild] are used for HTML form validation and generation; there has been some use of Mako for form generation using Mako's inheritance model.

Templating

[http://myghty.org Myghty] has been the default Pylons templating language through version 0.9.5, however, [http://www.makotemplates.org/docs/ Mako] has replaced Myghty as of version 0.9.6. [Haas, Christoph [http://workaround.org/pylons/beginning-pylons.html Beginning Pylons] . Retrieved July 5, 2007] Both templating languages are text-based (as opposed to XML-based), and support includes, inheritance and embedding arbitrary Python code.

Because of Pylons' loosely coupled layers, other templating languages can be used as well. Genshi, an XML-based templating language, can be used in lieu of either Mako or Myghty. [Genshi Wiki [http://genshi.edgewall.org/wiki/GenshiRecipes/PylonsWithGenshi Pylons with Genshi] Retrieved July 5 2007]

Database abstraction and object-relational mapping

Pylons has no default database library. Both SQLObject and SQLAlchemy are known to be used.

External links

* [http://www.pylonshq.com Pylons Project home page]
* [http://wiki.pylonshq.com Pylons Wiki]
* [http://pylonsbook.com The Pylons Book]
* [http://wiki.pylonshq.com/display/pylonscommunity/Sites+Using+Pylons Sites using Pylons] Packages used by the default Pylons installation, or popular additions:

* [http://myghty.org Myghty] - URL Dispatch, Controllers, Caching, Templating and more
* [http://www.makotemplates.org/docs/ Mako] - Alternative template engine to Myghty
* [http://pythonpaste.org/ Python Paste] - Project setup, testing, and deployment
* [http://peak.telecommunity.com/DevCenter/EasyInstall EasyInstall] - Installation and package dependencies
* [http://routes.groovie.org Routes] - Routing implementation based on Rails routes
* [http://formencode.org FormEncode] - Validation and form generation
* [http://pylonshq.com/WebHelpers WebHelpers] - HTML Helper functions

Mailing List

* [http://groups.google.com/group/pylons-discuss pylons-discuss on Google Groups]

Information taken from Google Groups as of Jan 10th, 2008:
* 1211 Members
* 284 Average messages per month (3 preceding months)

ee also

*Comparison of web application frameworks

References


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • Grok (web framework) — Infobox Software name = Grok developer = Grok developers, Zope Developers, Zope Foundation latest release version = 0.14 latest release date = release date|2008|09|29 genre = Web application framework license = ZPL License ( BSD like and GPL… …   Wikipedia

  • Django (web framework) — Django The default Django page Developer(s) Lawrence Jou …   Wikipedia

  • Nagare (web framework) — Nagare Developer(s) Alain Poirier, Net ng Initial release September, 2008 Stable release Nagare 0.3.0 / December 14, 2010; 9 months ago (2010 12 14) …   Wikipedia

  • Nitro (web framework) — Nitro Developer(s) George Moschovitis Stable release 0.41 / December 12, 2006; 4 years ago (2006 12 12) Operating system Cross platform …   Wikipedia

  • Web application framework — A web application framework is a software framework that is designed to support the development of dynamic websites, Web applications and Web services. The framework aims to alleviate the overhead associated with common activities used in Web… …   Wikipedia

  • Web Server Gateway Interface — The Web Server Gateway Interface defines a simple and universal interface between web servers and web applications or frameworks for the Python programming language.IdeaHistorically Python web application frameworks have been a problem for new… …   Wikipedia

  • Pylons — Тип Программный каркас для создания веб приложений Разработчик Бен Бангерт, Джеймс Гарднер Операционная система Кроссплатформенный Последняя версия 1.3 ( …   Википедия

  • Web Server Gateway Interface — Das Python Web Server Gateway Interface (WSGI) ist ein Standard Interface zwischen Webservern und Web Application Frameworks bzw. Web Application Servern um die Portabilität von Webanwendungen auf unterschiedlichen Webservern zu fördern. Die… …   Deutsch Wikipedia

  • List of web application frameworks — This is a list of notable web application frameworks, used for creating web applications. Client side ActionScript * Cairngorm * PureMVCJavaScript* Backbase * CJAX * Clean AJAX * Dojo Toolkit * Echo * Ext * [http://www.gapjumper.com/ Gapjumper] * …   Wikipedia

  • Lift (framework) — У этого термина существуют и другие значения, см. Lift. Lift Тип Фреймворк для разработки веб приложений Разработчик Lift Team …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”