Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Pylons project

From Wikipedia, the free encyclopedia
Collective for Python open source developers
Pylons Project
Type of site
Pythonframeworkdevelopment
Available inEnglish
OwnerOpen source
EditorAnonymous
URLpylonsproject.orgEdit this at Wikidata
CommercialNo
RegistrationNone
LaunchedDecember 27, 2010 (2010-12-27)
Current statusActive

Pylons Project is anopen-source organization that develops a set of web application technologies written inPython. Initially the project was a single web framework called Pylons, but after the merger with the repoze.bfg framework under the new name Pyramid, the Pylons Project now consists of multiple related web application technologies.

Pyramid

[edit]
Pyramid
DevelopersChris McDonough, Ben Bangert, Michael Merickel, Delta Regeer, Steve Piercy
Initial releaseJuly 8, 2008; 17 years ago (2008-07-08)[1]
Stable release
2.0.2[2] Edit this on Wikidata / 25 August 2023; 2 years ago (25 August 2023)
Written inPython
Operating systemCross-platform
TypeWeb application framework
LicenseBSD-like[3]
Websitetrypyramid.comEdit this at Wikidata
Repositorygithub.com/Pylons/pyramidEdit this at Wikidata

Pyramid is anopen sourceweb framework written inPython and is based onWSGI. It is aminimalistic web framework inspired byZope,Pylons andDjango.[4]

Originally called "repoze.bfg", Pyramid gathered attention mostly in theZope[5] andPlone community as theOpen Society Institute's KARL project migrated from Plone to BFG.[6] In 2010 it was announced that the Pylons framework will move over to using BFG as a base in version 1.5.[7] As a result of the inclusion of BFG into the Pylons project, BFG was renamed Pyramid.[8]

Features

[edit]

Pyramid is a minimalistic,platform-independent web framework. It is persistence agnostic and is integrated both with SQL databases viaSQLAlchemy and with theZope Object Database, as well as otherNoSQL databases, such asCouchDB.[4]

Pyramid allows developers to define routes usingregular expressions that map to objects. Like its fellow framework Zope, Pyramid also allows hierarchical object traversal, where each part of aURL is an object containing other objects, in a way that is similar to folders in a filesystem.[9]

Pylons Web Framework

[edit]
Pylons Framework
DevelopersBen Bangert, James Gardner
Initial releaseSeptember 2005; 20 years ago (2005-09)[10]
Stable release
1.0.2[11] Edit this on Wikidata / 22 July 2015; 10 years ago (22 July 2015)
Written inPython
Operating systemCross-platform
TypeWeb application framework
LicenseBSD license
Websitepylonsproject.org/about-pylons-framework.htmlEdit this at Wikidata
Repositorygithub.com/Pylons/pylonsEdit this at Wikidata

Pylons Framework is anopen-sourceWeb application framework written inPython. It makes extensive use of the Web Server Gateway Interface standard to promote reusability and to separate functionality into distinct modules.[12] It is strongly influenced byRuby on Rails: two of its main components, Routes and WebHelpers, are Python reimplementations of Rails features.

Structure

[edit]

Pylons is well known for having a near-complete stack of third-party tools, eschewing the"not-invented-here" phenomenon.

Installation, dependencies, and setup

[edit]

The official installation method of Pylons is throughEasyInstall via thePython Package Index (PyPI), 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 andPaste, 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 commonINI 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

[edit]

Currently the only widely used URL dispatcher for Pylons is Routes, a Python reimplementation of Ruby on Rails' URL dispatching, although any WSGI-compatible URL dispatcher can be used. While Routes is a separate library, it was developed for use in Pylons and its development remains closely in sync with Pylons.

HTML generation

[edit]

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 generatingJavaScript code making use of thescript.aculo.us andPrototype libraries.

FormEncode and FormBuild are used for HTML form validation and generation; there has been some use ofMako for form generation using Mako's inheritance model.

Templating

[edit]

Myghty was the default Pylons templating language, but as of version 0.9.6 it has been replaced byMako.[13] Both templating languages are text-based (as opposed toXML-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.[14]

Database abstraction and object-relational mapping

[edit]

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

Merger with repoze.bfg and birth of Pyramid Web Framework

[edit]

Pylons has developed into the Pylons Project, and the old code from Pylons 1.0 is now in maintenance-only mode. However, pursuant to the project's merger with repoze.bfg since November 2010, newer versions of Pylons are actually different from the original Pylons 1.0. Pylons developers initially planned to rewrite certain portions of the code, but they observed that the new code was approximating repoze.bfg, which led to the merger of Pylons and repoze.bfg.[15][16] This led to repoze.bfg (a part of the Repoze Python-based web framework) to become rebranded and relaunched as the Pyramid web framework.[17]

See also

[edit]

References

[edit]
  1. ^"Pyramid Change History — The Pyramid Web Framework v2.0".docs.pylonsproject.org. Retrieved2021-04-26.
  2. ^"Release 2.0.2". 25 August 2023. Retrieved19 September 2023.
  3. ^"Copyright, Trademarks, and Attributions — The Pyramid Web Framework v2.0".docs.pylonsproject.org. Retrieved2021-04-26.
  4. ^abChris McDonough."repoze.bfg introduction". Archived fromthe original on 2013-12-30. Retrieved2010-09-21.
  5. ^Gary Poster (2010-09-17)."Zope Summit, DZUG, repoze.bfg". Retrieved2010-09-21.
  6. ^Thomas Moroz, Chris Rossi & Calvin Hendryx-Parker (2009-10-28).KARL – large-scale Knowledge Management. Budapest, Hungary: Plone Conference 2009. Archived fromthe original on 2010-06-02. Retrieved2010-09-23.
  7. ^Ben Bangert (2010-09-18)."Emails explaining the Pylons 2 structure". Retrieved2010-09-21.
  8. ^"repoze.bfg is now Pyramid". Archived fromthe original on 2010-11-13. Retrieved2011-01-03.
  9. ^Wichert Akkerman (2009-10-28).Lessons from other frameworks. Budapest, Hungary: Plone Conference 2009. Event occurs at 25:50. Archived fromthe original on 2013-04-18. Retrieved2010-09-21.
  10. ^History of Pylons
  11. ^"Release 1.0.2". 22 July 2015. Retrieved22 July 2018.
  12. ^Themod_wsgiproject includes both Pylons and Pyramid in its list of supported major Python web frameworks.
  13. ^Haas, ChristophBeginning PylonsArchived 2009-02-16 at theWayback Machine. Retrieved July 5, 2007
  14. ^Genshi WikiPylons with Genshi Retrieved July 5, 2007
  15. ^Pylons Project FAQ. URL:https://pylonsproject.org/about-pylons-project.html
  16. ^Notes on the Pylons and repoze.bfg merger. URL:"Be Groovie - Notes on the Pylons & repoze.BFG Merger". Archived fromthe original on 2012-03-04. Retrieved2012-08-14.
  17. ^About Pyramid. URL:https://trypyramid.com/

Further reading

[edit]

External links

[edit]
.NET
C++
ColdFusion
Common Lisp
Haskell
Java
JavaScript
Back end
Server-side
Full-stack
Front end
Client-side
Perl
PHP
Python
Ruby
Rust
Scala
Smalltalk
Other languages
Retrieved from "https://en.wikipedia.org/w/index.php?title=Pylons_project&oldid=1331407326"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp