Xrecord.

侵略的なPython OrM
今すぐダウンロード

Xrecord. ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • BSD License
  • 価格:
  • FREE
  • 出版社名:
  • Jakub Wroniecki
  • 出版社のWebサイト:

Xrecord. タグ


Xrecord. 説明

侵略的なPython Or XRecordは、データベースへのオブジェクトインターフェイスを提供するライブラリです。テーブルはクラスとして表され、列は属性であり、データの行はクラスインスタンスです。データベースアプリケーションを開発するためにPythonを使用した場合は、次のように、1つ以上のORMに遭遇する可能性があります。オブジェクト関係マッピングへの代替的なアプローチXRecordはまた、薄型データベースの抽象化レイヤーであることを試みます。彼らが本当にうまくいっているのは何ですか。しかし、それらのほとんどを使用している間、私は彼らがすべての設計決定を共有していることを私はいくつかの設計決定を共有していることがわかりました。 。彼らはあなたがあなたのクラス(テーブル)内の外部キーを明示的に定義し、多くの多くの関係を説明することを必要とします。この情報のすべてがすでにあなたのRDBMSの中にありますので、これが乾いた原則と少し矛盾していると思います。一部のORMは、データベース(モデル)定義を完全にPythonコードで残すことによってこの問題に対処しようとしますが、これは単なる表面的なソリューションです。モデルはPythonで定義されていますが、データはまだ外部データベースに保存されています。既存のPython Ormsは必ずしもSyncでなければならないわけではありません。既存のPython OrmsはプログラマーからすべてのSQLを隠すように設計されていますが、それでも低レベルのデータベースAPIの上に置かれた抽象化レイヤを介して複雑なクエリを実行できます。これにより、コードは清潔でRDBMSに依存しないようになります。アプリケーションがSQLiteで開発およびテストされることが一般的であり、その後、エレガントで便利であるプロダクションでMySQL / PostgreSQLに切り替えます。このアプローチにはいくつかの問題があります。広く使用されているRDBMのすべては、洗練された成熟したプロジェクトであり、数千の工数は開発、テスト、最適化になります。それらのほとんどは、統一された抽象化レイヤを使用しているときに失われる可能性があるSQL標準(非標準タイプ、代替構文など)に多くの便利な改善を紹介します(これは、BTW、新しいバグの源である場合があります)。クリーンなコード、およびプラットフォームの独立性は、データベースシステムの機能を減らすことができます。迅速なアプリケーションを書くとき、私は私の仕事をより早くするでしょう、それは私の仕事をより早くするでしょうこれらすべての問題を克服するために、前述のORMのすべてがハック(または特徴:)を組み込んでいること。それは本当ですが、それは彼らが使用されるように設計されていた方法ではありません - これらのハックを使用することによって、あなたはもはや清潔でエンジンに依存しないコードを持っていませんが、それは低レベルのApi.Common ORMよりも豊富で保守的にされています。除外された機能*オブジェクトキャッシングなし、STOREのカスタマイズSQLを作成せずに選択クエリをカスタマイズする方法* No Automatic Database GenerationsUpported RDBMS * MySQL * SQLite * PostgesQL(XRecord "の主な機能はいくつかです。 : ・完全な内省、Pythonのモデル定義は必要ありません。 ・基準オブジェクトと参照オブジェクトの両方で自動外部キーマッピング、 ・多対多関係検知の自動 ・オプションの外部キー参照キャッシング、 ・生成されたレコードクラスを簡単に拡張して、オブジェクトに追加機能を提供します。 ・データベース定義に残っているFKとMTMの関係を簡単に定義します。 ・SQL文のオブジェクトマッピング、 ・単一のSQLを書き込むことなく使用できる場合があります。 ・複数列の主キー、 ・長期的なアプリケーション用に設計されたデータベース接続オブジェクト 要件: ・Python


Xrecord. 関連ソフトウェア