Turbogears-sqlalchemy
提供:Dev Guides
TurboGears – SQLAlchemy
TurboGearsアプリケーションでSQLを使用してリレーショナルデータベースでCRUD操作を実行することは可能ですが、PythonツールキットはSQLAlchemyを使用することをお勧めします。Pythonツールキットは、アプリケーション開発者にSQLのフルパワーと柔軟性を提供する強力なオブジェクトリレーションマッパーです。 SQLAlchemyによるSQLベースのデータベースのサポートに加えて、TurboGearsはMingを介してMongoDBデータベースもサポートします。 このセクションでは、SQLAlchemyの機能について説明します。
ORM(オブジェクトリレーショナルマッピング)とは何ですか?
ほとんどのプログラミング言語プラットフォームはオブジェクト指向です。 一方、RDBMSサーバーのデータはテーブルとして保存されます。 オブジェクト関係マッピングは、オブジェクトパラメータを基になるRDBMSテーブル構造にマッピングする手法です。 ORM APIは、生のSQLステートメントを記述することなくCRUD操作を実行するメソッドを提供します。
ギアボックスツールキットから「クイックスタート」コマンドを使用してTurboGearsプロジェクトを作成すると、SQLAlchemyサポートは次の構成設定によりデフォルトで有効になります-
「クイックスタート」プロジェクトは、その中にモデルパッケージも作成します。 たとえば、「Hello」プロジェクトにはHello \ hello \ modelがあります。 次のファイルがこのパッケージに作成されます-
- init。py -これはデータベースアクセスが設定される場所です。 このモジュールには、アプリケーションのモデルオブジェクトがインポートされます。 また、グローバルセッションマネージャーであるDBSessionと、すべてのモデルクラスの基本クラスであるDeclarativeBaseもあります。
- auth.py -これは、認証スタックで使用されるモデルが定義される場所です。 追加のデータベースモデルは別のモジュールとしてこのパッケージに格納され、init.pyに追加されます。