Pylons
開発元 | Ben Bangert, James Gardner |
---|---|
最新版 |
1.0
/ 2010年5月28日 |
プログラミング 言語 | Python |
対応OS | クロスプラットフォーム |
種別 | Webアプリケーションフレームワーク |
ライセンス | BSD License |
公式サイト | www.pylonshq.com |
Pylons は Python 言語で書かれた オープンソース の webアプリケーションフレームワークである。再利用性を促進し、機能を各モジュールに分割するためにWSGI 標準を広い範囲にわたり採用している。
Pylons は、Django や TurboGears などを含む昨今の webアプリケーションフレームワークの中でも最も新しいもののひとつである。Ruby on Railsに強い影響を受けており、主要なコンポーネントのうちRoutes と WebHelpers は、Rails の機能を Python で再実装したものである。
構造
Pylons は他社が開発したツールに基づくほぼ完成したスタックを持つことで知られており、明らかに NIH シンドロームを避けている。
インストール、依存ソフトウェア、設定
Pylons の公式なインストールの方法は、the Python CheeseShop 経由でEasyInstall を用いて行うことで、追加のツールもたいていは同じ方法でインストールされる。EasyInstall は必要に応じてパッケージの依存関係を解決する。Pylons と Paste を一緒にパッケージした配布系もあるが、配布系のパッケージは公式の配布物より遅れる傾向がある。Pylons は .egg ファイルを .zip ファイルに変更し、内容を展開することでもインストールできる。
Pasteプロジェクトの設定、テスト、配置に使用される。共通の INI構成フォーマットを用いており、Paste では開発と配置の設定を、インタラクティブなデバッガなどの Pylons の複雑な部分を製品版のユーザーから隠蔽した状態で開発者が同じコードベースをもとに動作させられるよう、複数の"プロファイル"を用いることができる。
URL のディスパッチ
Selectorなどの WSGI 互換の URL ディスパッチャであればどれでも使用可能だが、現在 Pylons 用に広く使われている唯一の URL ディスパッチャはRuby on Railsの URL ディスパッチ機構を Python で再実装したRoutes である。
HTML の生成
Pylonsでも採用されたRailsのもう一つの機構が、Routes の設定に基づき URL のマッピング機能を提供するWebHelpersである。WebHelpers は、script.aculo.us や Prototype ライブラリを利用したJavaScriptコードを生成するためのユーティリティ的な機能も提供する。
HTML フォームの検証と生成のために、FormEncode と FormBuild が用いられている。Mako の継承モデルを用いてフォームの生成を行うために、Mako も一部で用いられている。
テンプレート
Myghty がバージョン 0.9.5 まで Pylons のデフォルトのテンプレート言語であったが、バージョン 0.9.6 で Mako に置き換えられた。[1]いずれのテンプレート言語もインクルード、継承、任意の Python コードの埋め込みをサポートするテキストベース(XMLベースのものではない)のテンプレート言語である。
Pylons の緩く結合されたレイヤ構造により、それ以外のテンプレート言語も利用可能である。XML ベースのテンプレート言語Genshi もMako や Myghty いずれかの代わりに使用することができる。[2]
データベースの抽象化 / O/Rマッピング
Pylons にはデフォルトのデータベースライブラリはない。SQLObject と SQLAlchemy が知られている。
外部リンク
Pylons の標準インストールで用いられるパッケージ、および人気の高い追加パッケージ
- Myghty - URL のディスパッチ、コントローラ、キャッシュ機構、テンプレート機能など
- Mako - Myghty 以外のテンプレートエンジン
- Python Paste - プロジェクトの設定、テスト、配置
- EasyInstall - インストールとパッケージの依存関係
- Routes - Rails routes に基づく Routing の実装
- FormEncode - フォームの検証と生成
- WebHelpers - HTML ヘルパー機能
メーリングリスト
Google Groups からの情報によると(2008年1月10日):
- メンバー 1211 人
- 月平均 284 メッセージ(過去3ヶ月間)
脚注
- ^ Haas, Christoph Beginning Pylons. Retrieved July 5, 2007
- ^ Genshi Wiki Pylons with Genshi Retrieved July 5 2007