サイトの種類 | Python フレームワーク 開発 |
|---|---|
| 利用可能 | 英語 |
| 所有者 | オープンソース |
| エディタ | 匿名 |
| メールアドレス | pylonsproject.org |
| コマーシャル | いいえ |
| 登録 | なし |
| 発売 | 2010年12月27日 |
| 現在の状況 | アクティブ |
Pylons プロジェクトは、 Pythonで書かれた一連の Web アプリケーション テクノロジを開発するオープン ソース組織です。当初、このプロジェクトは Pylons と呼ばれる単一の Web フレームワークでしたが、repoze.bfg フレームワークと統合されて Pyramid という新しい名前になった後、Pylons プロジェクトは現在、複数の関連する Web アプリケーション テクノロジで構成されています。
ピラミッド
| 開発者 | クリス・マクドノー、ベン・バンガート、マイケル・メリケル、バート・JW・リギア、スティーブ・ピアシー |
|---|---|
| 初回リリース | 2008年7月8日[1] |
| 安定版リリース | 2.0.2 [2]
/ 2023年8月25日 |
| リポジトリ | github.com/Pylons/ピラミッド |
| 書かれた | パイソン |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | Web アプリケーション フレームワーク |
| ライセンス | BSD系[3] |
| Webサイト | トライピラミッド |
PyramidはPythonで書かれたオープンソースの Webフレームワークで、 WSGIに基づいています。Zope、 Pylons、Djangoに触発されたミニマルなWebフレームワークです。[4]
元々は「repoze.bfg」と呼ばれていたPyramidは、Open Society InstituteのKARLプロジェクトがPloneからBFGに移行したため、主にZope [5]とPloneコミュニティで注目を集めました。 [6] 2010年に、Pylonsフレームワークはバージョン1.5でBFGをベースとして使用するように移行することが発表されました。[7] BFGがPylonsプロジェクトに含まれた結果、BFGはPyramidに改名されました。[8]
特徴
Pyramidは、最小限のプラットフォームに依存しないWebフレームワークです。永続性に依存せず、 SQLAlchemy経由のSQLデータベースとZope Object Databaseの両方と統合されており、CouchDBなどの他のNoSQLデータベースとも統合されています。 [ 4 ]
Pyramid では、開発者はオブジェクトにマップする正規表現を使用してルートを定義できます。他のフレームワーク Zope と同様に、Pyramid でも階層的なオブジェクト トラバーサルが可能です。つまり、 URLの各部分は、ファイルシステムのフォルダーに似た方法で、他のオブジェクトを含むオブジェクトです。[9]
Pylons ウェブフレームワーク
| 開発者 | ベン・バンガート、ジェームズ・ガードナー |
|---|---|
| 初回リリース | 2005年9月[10] |
| 安定版リリース | 1.0.2 [11]
/ 2015年7月22日 |
| リポジトリ | github.com/pylons/pylons より |
| 書かれた | パイソン |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | Web アプリケーション フレームワーク |
| ライセンス | BSDライセンス |
| Webサイト | pylonsproject.org/about-pylons-framework.html |
Pylons Frameworkは、Pythonで書かれたオープンソースの Webアプリケーションフレームワークです。再利用性を促進し、機能を個別のモジュールに分離するために、Web Server Gateway Interface標準を広範に使用しています。[12] Ruby on Railsの影響を強く受けており、その主要コンポーネントの2つであるRoutesとWebHelpersは、Railsの機能をPythonで再実装したものです。
構造
Pylons は、ほぼ完全なサードパーティ製ツールのスタックを備えており、「自社開発ではない」という現象を回避していることでよく知られています。
インストール、依存関係、セットアップ
Pylons の公式インストール方法は、Python Package Index (PyPI) 経由の EasyInstall であり、追加ツールのほとんどは通常同じ方法でインストールされます。EasyInstall は、必要に応じてパッケージの依存関係も処理します。一部のディストリビューションでは Pylons とPasteもパッケージ化できますが、どのディストリビューションのパッケージも公式ディストリビューションより遅れる可能性があります。Pylons は、.egg ファイルの名前を .zip に変更して内容を抽出することで、手動でインストールすることもできます。
Paste は、プロジェクトのセットアップ、テスト、およびデプロイメントに使用されます。共通のINI構成形式を使用する Paste では、複数の「プロファイル」が許可されるため、開発者は、インタラクティブ デバッガーなどの Pylons の機密部分を実稼働ユーザーに公開することなく、同じコードベースから開発およびデプロイメント セットアップを実行できます。
URLディスパッチ
現在、Pylons で広く使用されている唯一の URL ディスパッチャは Routes です。これは、Ruby on Rails の URL ディスパッチを Python で再実装したものですが、WSGI 互換の URL ディスパッチャであればどれでも使用できます。Routes は別のライブラリですが、Pylons で使用するために開発されたもので、その開発は Pylons と密接に同期しています。
HTML生成
Pylons に適合した別の Rails は WebHelpers です。これは、Routes 構成に基づいて URL マッピングを提供します。WebHelpers は、script.aculo.usおよびPrototypeライブラリを利用してJavaScriptコードを生成するためのユーティリティ関数もいくつか提供します。
FormEncode と FormBuild は HTML フォームの検証と生成に使用されます。Makoの継承モデルを使用してフォームを生成するために Makoが使用されることもあります。
テンプレート
Myghty は Pylons のデフォルトのテンプレート言語でしたが、バージョン 0.9.6 以降ではMakoに置き換えられました。[13]両方のテンプレート言語はテキストベース ( XMLベースではなく) であり、インクルード、継承、任意の Python コードの埋め込みをサポートしています。
Pylonsの疎結合層のため、他のテンプレート言語も使用できます。XMLベースのテンプレート言語であるGenshiは、MakoまたはMyghtyの代わりに使用できます。[14]
データベースの抽象化とオブジェクトリレーショナルマッピング
Pylons にはデフォルトのデータベース ライブラリはありません。SQLObject と SQLAlchemy の両方が使用されることが知られています。
repoze.bfg との合併と Pyramid Web Framework の誕生
Pylons は Pylons プロジェクトに発展し、Pylons 1.0 の古いコードは現在メンテナンス専用モードになっています。しかし、2010 年 11 月以来のプロジェクトと repoze.bfg の統合により、Pylons の新しいバージョンは実際には元の Pylons 1.0 とは異なります。Pylons の開発者は当初、コードの特定の部分を書き直す予定でしたが、新しいコードが repoze.bfg に近似していることに気づき、Pylons と repoze.bfg が統合されました。[15] [16]これにより、repoze.bfg (Repoze Python ベースの Web フレームワークの一部) はブランド名が変更され、Pyramid Web フレームワークとして再リリースされました。[17]
参照
- Django (ウェブフレームワーク)
- 高速API
- Flask (ウェブフレームワーク)
- ウェブ2py
- TurboGears : Pylons をベースに構築された派生プロジェクト
- 竜巻
- ウェブフレームワークの比較
参考文献
- ^ 「Pyramid 変更履歴 — Pyramid Web Framework v2.0」。docs.pylonsproject.org。2021年 4 月 26 日閲覧。
- ^ “リリース 2.0.2”. 2023年8月25日. 2023年9月19日閲覧。
- ^ 「著作権、商標、帰属 — Pyramid Web Framework v2.0」。docs.pylonsproject.org 。 2021年4月26日閲覧。
- ^ ab Chris McDonough. 「repoze.bfg introduction」。2013年12月30日時点のオリジナルよりアーカイブ。2010年9月21日閲覧。
- ^ Gary Poster (2010-09-17). 「Zope Summit、DZUG、repoze.bfg」。2010-09-21閲覧。
- ^ Thomas Moroz、Chris Rossi、Calvin Hendryx-Parker (2009-10-28)。KARL – 大規模ナレッジマネジメント。ハンガリー、ブダペスト:Ploneカンファレンス2009。2010年6月2日時点のオリジナルよりアーカイブ。 2010年9月23日閲覧。
- ^ Ben Bangert (2010-09-18). 「Pylons 2 の構造を説明するメール」2010-09-21閲覧。
- ^ 「repoze.bfg は現在 Pyramid です」。2010 年 11 月 13 日時点のオリジナルよりアーカイブ。2011年 1 月 3 日閲覧。
- ^ Wichert Akkerman (2009-10-28). 他のフレームワークからの教訓。ハンガリー、ブダペスト: Plone カンファレンス 2009。イベントは 25:50 に発生。2013-04-18 にオリジナルからアーカイブ。2010-09-21に取得。
- ^ パイロンの歴史
- ^ 「リリース 1.0.2」。2015年7月22日。 2018年7月22日閲覧。
- ^ mod_wsgiプロジェクトでは、サポートされている主要な Python Web フレームワークのリストに Pylons と Pyramid の両方が含まれています。
- ^ Haas, Christoph Beginning Pylons 2009-02-16 にWayback Machineでアーカイブ。2007 年 7 月 5 日閲覧
- ^ Genshi Wiki Pylons with Genshi 2007年7月5日閲覧
- ^ Pylons プロジェクト FAQ。URL: https://pylonsproject.org/about-pylons-project.html
- ^ Pylons と repoze.bfg の合併に関するメモ。URL: 「Be Groovie - Pylons と repoze.BFG の合併に関するメモ」。2012 年 3 月 4 日時点のオリジナルよりアーカイブ。2012年 8 月 14 日閲覧。
- ^ Pyramidについて。URL: https://trypyramid.com/
さらに読む
- ガードナー、ジェームズ(2009年1月)。パイロンの決定版ガイド。カリフォルニア州バークレー:Apress。doi :10.1007 / 978-1-4302-0534-0。ISBN 978-1-59059-934-1。
外部リンク
- 公式サイト
