PYLONS (WEB FRAMEWORK)


'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, Routes and WebHelpers, are Python reimplementations of Rails features.

Contents
Structure
Installation, Dependencies, and Setup
URL Dispatch
HTML Generation
Templating
External links
Mailing List
See also
References

Structure


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 EasyInstall, and most of the additional tools are typically installed the same way. EasyInstall also handles package dependencies when relevant.
Python 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 Routes, a Python reimplementation of Ruby on Rails' URL dispatching.
HTML Generation

Another piece of Rails adapted for Pylons is 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.
FormEncode and 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

Myghty has been the default Pylons templating language through version 0.9.5, however, Mako will soon be replacing Myghty. [1] Both templating languages are text-based (as opposed to XML-based) templating languages that 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 Mighty. [2]
===Database Abstraction / ORM===
Pylons has no default database library. Both SQLObject and SQLAlchemy are known to be used.

External links



Pylons Project home page

Pylons Wiki

Sites using Pylons
Packages used by the default Pylons installation, or popular additions:

Myghty - URL Dispatch, Controllers, Caching, Templating and more

Mako - Alternative template engine to Myghty

Python Paste - Project setup, testing, and deployment

EasyInstall - Installation and package dependencies

Routes - Routing implementation based on Rails routes

FormEncode - Validation and form generation

WebHelpers - HTML Helper functions
Mailing List


pylons-discuss on Google Groups
Information taken from Google Groups as of Oct 31st, 2006:

★ 393 Members

★ 268 Average messages per month (3 previous months)

See also



Comparison of web application frameworks

References


1. Haas, Christoph Beginning Pylons. Retrieved July 5, 2007
2. Genshi Wiki Pylons with Genshi Retrieved July 5 2007


This article provided by Wikipedia. To edit the contents of this article, click here for original source.

psst.. try this: add to faves